码迷,mamicode.com
首页 > 编程语言 > 详细

*字符数组*

时间:2017-11-01 21:38:58      阅读:133      评论:0      收藏:0      [点我收藏+]

标签:文字   har   color   错误   指针   变量   不能   lov   logs   

字符数组与字符指针变量的区别:

char *a;
a = "I love China!"; //这是合法的,将I love China!的首字母首地址赋值给指针变量a

然而:

char str[50];
str = "I love China!"; //这是非法的,不太容易想

以下也是错误的:

char *a; 
scanf ("%s", a); //非法的,企图从键盘输入一个字符串并使a指向它, 这是容易理解的,也未开辟空间存放它

只有这样才是正确的:

char *a, str[10];
a = str;
scanf ("%s", a); //从键盘输入字符串存放到a指向的一段内存中

 字符数组中各元素的值是可以改变的,可以再对其赋值,但是字符指针指向的字符串常量的值是不能改变的,因为字符串常量存放在文字常量区,不能被更改。

*字符数组*

标签:文字   har   color   错误   指针   变量   不能   lov   logs   

原文地址:http://www.cnblogs.com/gzl0928/p/7768268.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!