2016-11-26 129 views

回答

3

? 10给你的address oft,而不是它的价值。

要打印的价值做:

printf("\nt = %d ", t); 
1

试试这个:printf("\nt = %d ", t);

您正在尝试打印t变量的地址。

1

&被称为一元,它给你一个变量的地址。这会让你感到困惑,因为当你使用scanf时,它需要一个地址来存储用户输入,所以你使用了一个单一的。但是在打印时,它希望将该值显示在屏幕上,而不关心其地址是什么。

例子:

​​

或者,如果你真的想看到的地址是:

printf("\n %p", &t); // This displays a memory location properly formatted. 
+0

的'p'转换指定为'唯一void'三分球定义。所以它应该是'printf(“\ n%p”,(void *)&t);')。 – alk

相关问题