当负int除以sizeof(int)或sizeof(long)时,为什么c ++ / c不会给出不正确的值

时间:2016-07-23 09:14:11

标签: c++ gcc g++ sizeof

这是问题所在:

int num = -16;
int div = num / sizeof(int);

div的值不正确(一些大的垃圾值)。但如果我这样做,

int num = -16;
int intSize = sizeof(int);
int div = num / intSize;

然后它给出了正确的答案。我需要知道的是,为什么会发生这种情况?

0 个答案:

没有答案