指针与字符串
本帖最后由 xjy99 于 2017-8-6 16:41 编辑举例:
char *a="U lower the IQ of the whole street.";等效于
char *a;
a="U lower the IQ of the whole street.";
[过程]
1>编译器先依次为每个字符分配内存,(挖了好多坑哦)
比如说:
1)精心挑选了一个名为66ccff20坑位,把字符'U'扔了进去
2)然后只好选择名为66ccff28坑位,把字符' '扔了进去
......
n)......
2>依次填完后,先在'.'后再挖一个坑填'\0'
3>然后再把字符U的地址66ccff20赋给a,结束。
char *a="U lower the IQ of the whole street.";
printf("输出字符:%c /n", *a);/*输出字符,使用"%c"*/
printf("输出字符:%c /n", *(a+1) );/*输出字符,使用"%c"*/
printf("输出字符串:%s /n", a); /*输出字符串,使用"%s";而且a之前不能有星号"*"*/
/*运行结果如下:
输出字符:U
输出字符:(空格)
输出字符串:U lower the IQ of the whole street.*/
[注]:
1)a [ i ]等效于*(a+i)
2)使用%s,读到'\0'结束
页:
[1]