指针无法识别的行为

时间:2015-11-04 20:20:43

标签: c pointers printf

n

输出 - @

不应该打印1或cmpl $1, %eax可能是原因吗?

2 个答案:

答案 0 :(得分:4)

要在指针处打印值(即1,如您所料),您必须取消引用该指针。在你的情况下,

printf("%c",p);

应该是

printf("%c", *p);

FWIW,printf("%c",p);将调用未定义的行为,因为提供的参数类型将与提供的格式说明符不匹配。

答案 1 :(得分:2)

p是一个指针。

您想要printf("%c",*p);