新手求解答:一个关于不清楚的问题,谢谢解答!!
这个问题有点不好描述在TC中测试 int是占 2个字节 , 在vc6.0中测试 int 占4个字节 ,char 占 1 个字节
我原本的意思是:
(在TC中)取 变量在内存中的一个字节
程序代码:
#include <stdio.h> int main(void) { int i,j; scanf("%d %d",&i,&j); printf("%d , %d\n",*&(char)i,*&(char)j); return 0; }
例如:输入 :300 400 (回车)
44 , -112
解释:300 的16进制 12C 取 2C 十进制 44
400 的十六进制 190 取 90 十进制 144 根据 char 的取值范围 -128~ 127 可以计算出 为 -112
在vc6.0中以上代码报错 ,TC中正确
请问这个问题的根本原因是什么??