gpt4 book ai didi

c - 是否需要转换字符串的字节顺序?

转载 作者:太空狗 更新时间:2023-10-29 15:52:44 25 4
gpt4 key购买 nike

是否需要在发送和接收字符串时转换为网络/主机字节顺序。可用函数(例如 htons())仅适用于 16 位和 32 位整数。我也知道一个事实,即单个字符不应该有所作为,因为通常它是一个字节大。但是字符串呢?

以下是代码片段

 int len; recv(fd, &len, sizeof (int), 0); 
len = ntohl(len);

char* string = malloc(sizeof (char) * (len + 1));
int received = recv(fd, string, sizeof (char) * len, 0);
string[len] = '\0';

最佳答案

这取决于字符串的编码。

如果它是面向字节的格式(普通的旧式 ASCII 或 UTF-8),则没有关系。

如果它使用大于单个字节的“代码点”,那么它很重要。

关于c - 是否需要转换字符串的字节顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15877643/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com