【发布时间】:2015-06-13 10:05:34
【问题描述】:
我正在制作一个服务器程序,一个客户端发送了各种数据,如字符串、整数。
当客户端程序向我发送字符串时, 我按常规顺序收到。
例如,
一位客户给我发了“你好” 我已收到 h e l l o \0
但是,客户向我发送了 12345 这样的整数 我收到的是颠倒的。
例如)
客户想给我发 12345(整数类型) 他或她发送了 '30''39''\0' 我收到了 '57''48''\0' ('57' 是 '0x39' 的十进制,'48' 是 '0x30' 的十进制)
我发现该值被颠倒发送,我认为这是因为网络字节顺序。 但是,我没有使用网络,我有客户端和服务器程序。 换句话说, 我给自己发送了数据,但我的电脑没有连接到互联网。
我使用 c 语言的邮件槽与客户进行通信。 为什么整数类型是倒置发送的?
【问题讨论】:
-
发送的和收到的一样,所以你可能弄错了
0x390x30首先被发送。如果您对十六进制值使用十六进制表示法而不是为十六进制和十进制写撇号,这将使您的问题更清楚。同时显示您发送和接收的代码。
标签: c endianness mailslot