所以这是我的代码:
#include <stdio.h>
main(){
int hi;
hi = 3;
printf("%d",&hi);
}
,输出为:“2686748”
在Windows 7上使用“代码块”
任何想法都错了吗?
答案 0 :(得分:4)
&amp; 是C中运算符的地址。因此,如果您说&amp; hi,它将打印变量hi的地址。要在变量内打印值,请删除&amp;在您使用的行中。
printf("%d",hi);
答案 1 :(得分:2)
它正在打印一个地址,因为您告诉编译器使用地址运算符 &
。
如果您想打印该值,只需撰写hi
而不是&hi
。
答案 2 :(得分:1)
"%d"
告诉printf
你输入一个整数。您提供的整数是&hi
,它是hi
的地址。如果您希望hi
的值只使用
答案 3 :(得分:1)
&
运算符为您提供变量的地址
printf("%d", &hi);
打印地址和
printf("%d", hi);
打印值。
答案 4 :(得分:0)
如果您打算打印hi
的值,只需将其传递给printf,而不是其地址:
printf("%d", hi);
您可能会将printf
与scanf
混淆,后者要求其所有参数都是指针。