#include <stdio.h>
void main()
{
char *p="china";
printf("%s\n",p);
}
结果是能输出china
小弟我不懂得就是为什么 printf()的输出项列表中是指针却能输出 理论应该输出p的地址(一串数字)啊,,怎么会输出字符呢 毕竟 p只是只是指向"china"的指针
------解决方案--------------------------------------------------------
这个是printf函数规定它这么做的。如果是%s,那么它就会读取一个字符数组……
这好比问为什么打开空调就能出冷气,而打开电视机就不能一样。有什么好困惑的。
------解决方案--------------------------------------------------------
第一个错了
char[] s = "hello";
char *p = &s[0];