<分区>
#include <stdio.h>
int main(void)
{
int i=10;
printf("%p",i);
return 0;
}
输出:-
0xa
%p - 我读过 %p 用于在 printf 中打印指针,但这里 i 是一个整数,而且也没有声明指针,所以“0xa”如何得到输出。
<分区>
#include <stdio.h>
int main(void)
{
int i=10;
printf("%p",i);
return 0;
}
输出:-
0xa
%p - 我读过 %p 用于在 printf 中打印指针,但这里 i 是一个整数,而且也没有声明指针,所以“0xa”如何得到输出。
最佳答案
您的代码的行为未定义,因为%p
不是int
类型的适当格式说明符。
编译器可以做任何,包括将您的代码优化为 int main(){}
。
关于c - 我对 %p 说明符感到困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44649541/