为何同样的代码编译的大小不同

为什么同样的代码编译的大小不同
本帖最后由 stop1204 于 2013-09-28 09:23:02 编辑
代码一样 怎么我一注销系统重开后重新编译的文件就大了14KB
使用编译器是一样的,,我就是把 MASM的文件夹 移到另一个磁盘 ...


为何同样的代码编译的大小不同


.386
.MODEL flat,stdcall
option casemap:none

 ;<!-- Include文件定义 -->
 include windows.inc
 include user32.inc
 includelib user32.lib
 include kernel32.inc
 includelib kernel32.lib
.data
szCaption db 'A MessageBox !',0
szText db 'Hello, World !',0
.code
start:
invoke MessageBox,NULL,offset szText,\
offset szCaption,MB_ICONWARNING
invoke ExitProcess,NULL
end start

------解决方案--------------------
估计是楼主搬动了 Masm32 目录后,没有再设置正确的 path 而引用了其它地方的 vc6 里的 link.exe 进行链接造成的;刚才试了下,vc6 的link.exe 确实是默认 4K 对齐的,vc2008 的就不是了,所以 #17 的 vc2010 也没有问题,除非是手工加入对齐选项。可以参考http://blog.****.net/bagboy_taobao_com/article/details/7295575