这是一个简单的程序:
int main() {
return 0;
}
退出代码为0
。
如果我写:
int main() {
return 700;
}
退出代码为188
。
为什么这里的退出代码是188
而不是700
?
虽然C中的主函数返回int
,但操作系统不一定使用int
作为错误代码。
二进制中的CCD_ 7是CCD_
将该值截断为八个比特,得到10111100
这等于十进制的188
。
这意味着您的操作系统使用8位作为错误代码1
1或者可能是9位,因为这里的第8位(请注意,我们从0开始计数)是0
。然而,这是极不可能的,因为9
不是2
的幂,数据宽度的约定也是如此。