一个原来好好的网络程序,在另外一台LINUX机器上面重新编译后,运行很奇怪。总是无法解析网络数据。
跟踪发现,取得的头部信息,都是错误的。
查了半天,最终发现,取得的头部信息,是原来的两倍长度!原来这个机器是64位CPU,头部信息里面,定义使用了
long型,32位下是4字节,64位下是8字节,导致长度加倍。更换了数据类型后,重新编译运行,正常了。
看来以后还得多注意这种跨平台的兼容性问题了。
查看全部回复
我也来说两句
peakzhang 发表于: 2008-9-18 23:24 来源: ACE 开发者