int型变量有时候占4个字节(在Win32),有时候占2个字节(在DOS)
这个int类型的大小到底是跟编译器有关,还是跟CPU有关,还是跟操作系统有关?
所谓的16位32位64位系统是由cpu决定的,由机器指令的寻址、寄存器位数决定的
os受cpu的限制,但在32位的cpu下16位的os也可以跑(就向上面提到的所谓纯dos)
很多os是向前兼容的,就是使以前的程序也能运行,如果编译器本身是16位时代做的,那么os会提供一个模拟16位的子环境供这个编译器使用
32位的机子上,一般来说是4字节。不过这个和编译器等有关。