0

这个问题纯属理论,而不是关于正确的做法,但我们是否需要将 char 'x' 转换为网络格式?我在所有情况下都很感兴趣:总是/有时/从不我个人认为我应该,但我需要确定的是,比你。

4

2 回答 2

3

不,char 是单字节值,所以字节序无关紧要

于 2013-02-03T21:41:53.903 回答
3

正如你所想的那样(endianess、ntohs ntohl 等),不。

不太基本,我应该提出一个非网络绑定警告:任何未附加其编码的字符串都是不可读的。

假设您正在发送/存储,无论是否通过网络,字符串“Français”和“ç”都必须使用字符编码进行编码。未指定字符编码意味着如果您使用 utf8 对其进行编码,则它可以读取为“Français”,但您的读者认为它是 latin1。

所以你有两个解决方案:

  • 为您的应用程序写下一个规范,以仅使用相同的字符编码
  • 将元数据放在标头上,指定未来字符串的编码(如 HTTP)。
于 2013-02-03T21:46:16.083 回答