C 我怎样才能知道这个不同寻常的角色的价值呢?内有数字的方阵

C 我怎样才能知道这个不同寻常的角色的价值呢?内有数字的方阵,c,sockets,character-encoding,special-characters,C,Sockets,Character Encoding,Special Characters,上传的图像显示了不寻常的字符(方阵中写入了数字)。当我尝试写入时会发生这种情况 write(fd, buf,len)'s `buf` variable using fprintf function. 有没有办法解释这些字符 其他信息:-write()有一个要写入的套接字fd。 如果我遗漏了什么,请告诉我。 另外,请重新标记这个帖子,因为我不知道哪个标签适合这个帖子。 [编辑]:如果这些字符不清晰可见,请缩放网页(使用ctrl++) 在十六进制编辑器中打开文件。 十六进制编辑器通常以二进制和十

上传的图像显示了不寻常的字符(方阵中写入了数字)。当我尝试写入时会发生这种情况

 write(fd, buf,len)'s `buf` variable using fprintf function.
有没有办法解释这些字符

其他信息:-
write()
有一个要写入的套接字fd。 如果我遗漏了什么,请告诉我。 另外,请重新标记这个帖子,因为我不知道哪个标签适合这个帖子。
[编辑]:如果这些字符不清晰可见,请缩放网页(使用ctrl++)

在十六进制编辑器中打开文件。
十六进制编辑器通常以二进制和十六进制值显示每个字符的值。

在十六进制编辑器中打开文件。 十六进制编辑器通常以二进制和十六进制值显示每个字符的值。

显然,这些是“不可打印”字符(在您当前的语言中,但很可能在所有语言中)。使用fprintf(“%02x、%02x、%02x、%02x”、buf[0]、buf[1]、buf[2]、buf[3])以显示其实际值

显然,这些是“不可打印”字符(在您当前的语言中,但很可能在所有语言中)。使用fprintf(“%02x、%02x、%02x、%02x”、buf[0]、buf[1]、buf[2]、buf[3])以显示其实际值

它们都是,盒子只是打印它们的一种方式。另一个选择是根本不显示它们,但这样你就不那么容易知道它们了

  • 0x1F
    单元分隔符
  • 0x7F
    删除
  • 0x01
    标题开始
  • 0x1C
    文件分隔符
(您可以从框中阅读以上所有内容)

因为这些几乎从未在文本中使用过,所以您可能不应该将它们视为文本。如果将它们视为控制字符,则它们即使作为控制字符也没有意义。

它们都是,方框只是打印它们的一种方式。另一个选择是根本不显示它们,但这样你就不那么容易知道它们了

  • 0x1F
    单元分隔符
  • 0x7F
    删除
  • 0x01
    标题开始
  • 0x1C
    文件分隔符
(您可以从框中阅读以上所有内容)


因为这些几乎从未在文本中使用过,所以您可能不应该将它们视为文本。如果你把它们当作控制字符来看待,它们甚至作为控制字符也没有意义。

你的控制台的编码是什么?运行时字符串的编码是什么?@BenjaminToueg$echo$LC_CTYPE(blank)$echo$LANG en_“如何查找字符串的运行时编码?”控制台的编码是什么?运行时字符串的编码是什么?@benjamintueg$echo$LC_CTYPE(blank)$echo$LANG en_在如何查找字符串的运行时编码中?我找到了这些字符的值,现在,我想知道它们是否用作网络上的控制字符(套接字编程)@AkshayPatil,这是一个完全不同的问题,应该作为一个新问题提出,但它需要更加具体——控制字符的使用在很大程度上取决于协议和程序。我发现了这些字符的值,现在,我想知道它们是否在网络上用作控制字符(套接字编程)?@AkshayPatil,这是一个完全不同的问题,应该作为一个新问题提出,但它需要更加具体——控制字符的使用在很大程度上取决于协议和程序。