|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include<stdio.h>
int main()
{
int a,b,c;
int *pc = &c;
int *pa = &a;
int *pb = &b;
scanf("%d,%d",&a,&b);
*pc = *pa + *pb;
printf("%d,%d\n",&a,&b);
printf("%d,%d,%d\n",c,&c);
return 0;
}
****************************************************
18 , 32
1245052 , 1245048
50 , 1245044 , 2367460
Press any key to continue . . . . . .
问题:由于不小心,输出时多打了一个 %d ,输出了一个 2367460 ,于是,我其上一行添加了一行:printf("%d,%d\n",&a,&b); 想看看是不是 &a 或者 &b ,结果不是。那么,这个 2367460 是什么玩艺?
下图来自于《C Primer Plus 第6版中文版》P63, P64, P82
个人的建议是,没必要纠结它是什么,因为这个结果C标准中没有规定,
具体出现什么情况全看编译器和环境的心情,深究起来意义不大。
|
|