您的位置:首页 > 编程语言 > C语言/C++

C语言指针的赋值和初始化

2016-12-03 16:07 351 查看
1.定义的时候直接用字符串初始化:

char a[10] = “hello”;

注意不能先定义再赋值:

char a[10];

a[10] = “hello”;

这是错误的!!!

2.可以对数组中的字符逐个赋值:

char a[10] = {‘h’,’e’,’l’,’l’,’o’};

末尾的’\0’会自动补上;

3.可以利用strcpy:

char a[10];

strcpy(a,”hello”);

易错情况:

1.char a[10];

a[10] = “hello”;

错误:一个字符怎么能容纳一个字符串呢,况且a[10]也并不存在;

2.char a[10];

a = “hello”;

错误:这种情况容易出现,a虽然是指针,但是它已经指向在堆栈中分配的10个字符空间,现在这个情况a又指向数据区中的hello常量,这里的指针a出现混乱,不允许!

还有:不能使用关系运算符“==”来比较两个字符串,只能用strcmp()函数来处理.

转载至http://blog.csdn.net/jphaoren/article/details/5803583
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: