*p不会"打印"任何东西; 这只是一个取消引用指针的表达式,并产生int它指向的任何值.
您可以使用以下方式打印:
printf("*p=%d\n", *p);
Run Code Online (Sandbox Code Playgroud)
并且它将5在你的程序中打印,因为p点数a和值a是5.
%d重要的是,它告诉printf()我们期望一个int值,并将其格式化为字符串以进行打印.
您也可以打印指针本身:
printf("p is %p, a is at %p\n", p, (void *) &a);
Run Code Online (Sandbox Code Playgroud)
这将两次打印相同的地址.该%p格式说明用于打印的地址.