求教a和a[0]的具体区别
#include<stdio.h>int main(){
char a[50]="hello world.";
char *p=a;
printf("%s\n",p);
return 0;
}
为什么用printf("%s\n",*p);不行啊,a和a[0]地址不是相同吗?希望能够答具体透彻一点。多谢!
2016-03-01 15:03
程序代码:#include<stdio.h>
int main()
{
char a[50]="hello world.";
char *p=a;
printf("%s\n",p); //p指向字符串
printf("%c\n",*p); //*p是字符
return 0;
}

2016-03-01 15:15
程序代码:#include <stdio.h>
int main()
{
char a[50]="hello world.";
char *p=a;
//以下三句等同
printf("%s\n",&a[0]);
printf("%s\n",a);
printf("%s\n",p);
//以下两句等同
printf("%c\n",a[0]);
printf("%c\n",*p);
return 0;
}

2016-03-01 15:27
2016-03-01 17:27
[此贴子已经被作者于2016-3-1 18:32编辑过]
2016-03-01 18:29
[此贴子已经被作者于2016-3-1 21:05编辑过]

2016-03-01 20:47
2016-03-01 22:17
2016-03-02 07:13
2016-03-02 11:48
2016-03-02 23:02