buffer、slice 和 Vec
C 里表示一段二进制数据,最常见的形态是指针加长度:
int parse_packet(const uint8_t *buf, size_t len);
这套写法很灵活,也很危险。buf 是否为空、len 是否可信、函数会不会修改数据、会不会保存这个指针、调用方什么时候释放内存,都不在类型里,只能靠约定、注释和经验。
C 里表示一段二进制数据,最常见的形态是指针加长度:
int parse_packet(const uint8_t *buf, size_t len);
这套写法很灵活,也很危险。buf 是否为空、len 是否可信、函数会不会修改数据、会不会保存这个指针、调用方什么时候释放内存,都不在类型里,只能靠约定、注释和经验。