作者micky64 (micky)
看板C_and_CPP
标题[问题] xcode与Visual Studio结果不同
时间Sat Nov 7 17:51:17 2015
开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
Xcode & Visual Studio 2010
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
无
问题(Question):
两者结果不同
VC++:
http://imgur.com/pxTWyMb
Xcode:
http://imgur.com/gAG4F0g
喂入的资料(Input):
lena.bmp (8bits,512*512)
http://imgur.com/o4kWisP
预期的正确结果(Expected Output):
VC++才是预期结果, 用dev c++也是一样的结果,
但xcode究竟哪里错了QQ
错误结果(Wrong Output):
如问题处QQ
程式码(Code):(请善用置底文网页, 记得排版)
http://codepad.org/6s9RTkek
补充说明(Supplement):
希望有人能帮我解决这问题QQ
不管怎麽重开project, 重开机 都无法变成正确的图Orz
先谢谢各位Q______Q
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.251.225.175
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1446889880.A.457.html
1F:→ x000032001: A,B,C,D,E,F,G...................... 11/07 18:26
呜呜我知道矩阵设得乱七八糟QQQQQ
但是我有写注解希望有人能有办法解决QQQQQ
※ 编辑: micky64 (111.251.225.175), 11/07/2015 18:35:22
2F:推 chubiei: 看code猜测是因为struct大小不同 可以google关键字 11/07 20:59
3F:→ chubiei: c attribute packed 11/07 20:59
4F:→ remizu: 建议遇到这类问题时 可以先一步步追踪值到哪里不符合预期 11/07 21:12
5F:→ remizu: 楼上说的struct alignment的问题是有可能的 11/07 21:13
6F:推 LiloHuang: 一样都是 64 bit 的程式,Windows 的 unsigned long 11/07 21:45
7F:→ LiloHuang: 会是 4 bytes,但是在 UNIX-like 下会是 8 bytes 11/07 21:46
8F:→ LiloHuang: 请 #include <stdint.h> 然後改用 uint32_t 来描述 BMP 11/07 21:46
9F:推 LiloHuang: 我相信问题自然就会消失,有兴趣可以自己印一下大小 11/07 21:51
10F:推 kwpn: unsigned long全改成uint32_t试试 11/07 23:18
11F:→ kwpn: c,c++读档和网路传输,最好不要用int,long,char之类的型别啦 11/07 23:20