加载中…
个人资料
守望奇迹
守望奇迹
  • 博客等级:
  • 博客积分:0
  • 博客访问:823
  • 关注人气:4
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
博文
标签:

it

分类: C相关

学了这么多年的C语言,突然发现连字符串赋值都出错,真的很伤心。——相当有同感的!!!

char a[10];

怎么给这个数组赋值呢?

1、定义的时候直接用字符串赋值

char a[10]='hello';

注意:不能先定义再给它赋值,如char a[10]; a[10]='hello';这样是错误的!

2、对数组中字符逐个赋值

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

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出现混乱,不

  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有