编译器可以设定int和long的长度吗? 46 次浏览 以long为例,虽然大部分64位C语言编译器long长度是8,依然有选项可以将long的长度设定为4. gcc -m32选项可以让GCC生成32位目标代码,sizeof(int)和sizeof(long)也就变成4. 需注意,gcc -m64选项可以让GCC生成64位目标代码,sizeof(int)依然保持4. man gcc看到形如-mint64, -mlong32之类的设定,值得注意的是:在某些GCC版本很可能不支持,不能认为这些选项一定有效!