0
如何配置VS 2012的编译器将int变量的类型更改为2个字节而不是4个字节? 我试过了:如何配置VS 2012的编译器以更改基本数据类型大小?
#include <iostream>
#include <stdint.h>
int main(int argc,char* argv[])
{
typedef __int16 int16_t;
int16_t x=5;
std::cout<<"Size of integer number= "<<sizeof(x)<<" Bytes\n";
system("pause");
return 0;
}
这是编译配置的意思吗? 我认为我的问题的答案不是一段代码,它是关于在VS中改变一些设置,我是对吗?
我写了上面的代码,并通过打印整数变量x的大小,它是2 bytes.is,编译器配置? – Ahmed
__int16通过它的名称反映它是2个字节。你的程序没有太大用处。你应该检查VS配置的MSDN帮助。 – Nitin
很确定Windows会采用[ILP32数据模型](https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.3.0/com.ibm.zos.v2r3.cbcpx01/datatypesize64.htm),在这种情况下int将会始终为4个字节 - 尽管在任何情况下都不能保证该标准。对于你来说,你几乎肯定需要坚持'int16_t'(从'stdint.h'头文件中,'typedef'是多余的)。 – CookiePLMonster