这是源代码
#include<stdio.h>
void main()
{
int *p,a=5;
p=&a;
scanf("%d",p);
printf("%d\t",*p);
printf("%d",a);
}
我们如何接受指针的地址?.Cuz它具有变量的地址&#39; a&#39;已经。编译器没有显示错误。 此外,我无法理解输出。
输出:(如果输入为45)45 45
答案 0 :(得分:1)
您的指针也是a
之类的变量,并且拥有自己的地址。您可以通过说&p
来访问它。但你说scanf("%d", p);
所以它正在访问指针的指向地址。
编辑:如果您想打印指针的地址,可以使用printf("%p\n",(void *) &p);
答案 1 :(得分:0)
您可以通过地址&amp; p
访问指针本身//Instead of include "test.txt";
//we include the part manual by eval
$cont = file_get_contents("test.txt");
//Strip of leading <?php and eval the string
eval(substr($cont, 5));
也谨慎使用它,它不可移植并可能导致未定义的行为。它可以在32位机器上工作,因为int和int *具有相同的位长度,但对于其他CPU可能不起作用。