马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 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'结束 |