数组和指针 到 存储类(1)
C Primer Plus中
ok,11.1.1在程序中定义字符串
三、数组和指针
首先看下面的小程序:
1 #include<stdio.h> 2 3 int main(void) 4 { char m4[] = "this is amzing"; 5 char *m3 ="yeah,you are right"; 6 7 //printf("%s\n",++m4); 8 printf("%s\n",m4+1); 9 printf("%s\n",++m3); 10 11 return 0; 12 }
数组名字 m4 是个 常量;而指针 m3 是个变量;
威力加强版代码如下
1 #include<stdio.h> 2 3 int main(void) 4 { char m4[] = "this is amzing"; 5 char *m3 ="yeah,you are right"; 6 7 //printf("%s\n",++m4); 8 printf("%s\n",m4+1); 9 printf("%s\n",++m3); 10 11 12 //1.指针可以这样指针运算符,但是数组名字就不行了哦 13 while( *m3 != '\0') 14 putchar(*(m3++)); 15 putchar('\n'); 16 17 18 // 2.此指针式变量,数组名字是常量, 19 m3 = m4; 20 while(*m3 != '\0') 21 putchar(*(m3++)); 22 23 //3.ok,下面的用法就是错误的 24 // m4 = m3; m4,也就是左值是一个常量,相当于 3 =a;明显错误嘛 25 26 return 0; 27 }
实现现象如下图:
需要注意的是区分“” 和‘’ ,也就是单引号 和双引号 哈
四、数组和指针的区别
posted on 2013-09-12 10:43 イケメンおっさん_汪汪 阅读(213) 评论(0) 编辑 收藏 举报