Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 通过套接字发送的字符_C_Network Programming - Fatal编程技术网

C 通过套接字发送的字符

C 通过套接字发送的字符,c,network-programming,C,Network Programming,这个问题纯粹是理论问题,不是关于正确的方法,但是我们需要将字符“x”转换为网络格式吗?在任何情况下我都很紧张:总是/有时/从不 我个人认为我应该,但我需要比你确定。不,char是一个单字节值,所以endianess不重要不,char是一个单字节值,所以endianess不重要正如你所想的那样(endianess,ntohs ntohl,等等),不 基本上,我应该提出一个非网络绑定的警告:任何没有附加编码的字符串都是不可读的 假设您正在通过网络发送/存储字符串“Français”和“ç”,则必须使

这个问题纯粹是理论问题,不是关于正确的方法,但是我们需要将字符“x”转换为网络格式吗?在任何情况下我都很紧张:总是/有时/从不
我个人认为我应该,但我需要比你确定。

不,char是一个单字节值,所以endianess不重要

不,char是一个单字节值,所以endianess不重要

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

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

假设您正在通过网络发送/存储字符串“Français”和“ç”,则必须使用字符编码。不指定字符编码意味着如果您使用utf8编码,但您的读者认为它是拉丁文1,则可以读取“Français”

因此,您有两种解决方案:

  • 为您的应用程序编写一个规范,使其仅使用相同的字符编码
  • 将元数据放在头上的某个位置,指定未来字符串的编码(如HTTP)
正如你所想(Endianness、ntohs、ntohl等),不

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

假设您正在通过网络发送/存储字符串“Français”和“ç”,则必须使用字符编码。不指定字符编码意味着如果您使用utf8编码,但您的读者认为它是拉丁文1,则可以读取“Français”

因此,您有两种解决方案:

  • 为您的应用程序编写一个规范,使其仅使用相同的字符编码
  • 将元数据放在头上的某个位置,指定未来字符串的编码(如HTTP)

哪种“网络格式”?如果是网络字节顺序,。。我们在这里讨论两件不同的事情。我相信网络字节顺序是指八位字节顺序的一种形式(特别是8位字节),而C中的字节有字符位,可能大于或等于8。哪种“网络格式”?如果是网络字节顺序,。。我们在这里讨论两件不同的事情。我相信网络字节顺序是指八位字节顺序的一种形式(特别是8位字节),而C中的一个字节有字符位,可能大于或等于8。是的,更一般地说,任何没有附加编码的数据都是不可读的。这是一条超越网络甚至计算机科学的基本规则。两端需要共享相同的编码/解码规则,否则无法进行通信。是的,更一般而言,任何未附加编码的数据都是不可读的。这是一条超越网络甚至计算机科学的基本规则。两端需要共享相同的编码/解码规则,否则无法进行通信。