| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3086 人关注过本帖
标题:请教解答:char *str="hello" 与char str[]="hello" 二者的区别 ...
只看楼主 加入收藏
TAAAAB
Rank: 7Rank: 7Rank: 7
来 自:湖南
等 级:黑侠
威 望:1
帖 子:243
专家分:635
注 册:2011-5-29
收藏
得分:0 
"hello"是字符串常量。(不论把它赋给字符指针还是字符数组,它自己本身都不会改变。)
char *str="hello"  表示把字符串常量的首地址赋给指针变量。(str的值能改,*str和值不能改)
char str[]="hello" 表示把字符串常量中的每个字符赋给数组中的每一个元素。(&str[0]的值不能改, str[0]的值能改)

人有多懒,编程就有多难。
2015-02-11 17:29
code力力
Rank: 5Rank: 5
来 自:宜昌
等 级:职业侠客
威 望:2
帖 子:215
专家分:338
注 册:2015-1-12
收藏
得分:0 
回复 11楼 TAAAAB
恩,理解。

你醒了?快起来敲代码!!
2015-02-11 18:17
young
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:223
专家分:160
注 册:2004-9-5
收藏
得分:0 
百度上搜下字符串指针和字符串数组,解释的都很到位的

如果你爱C语言,请你爱指针; 如果你爱指针,请你爱指针的指针;
2015-02-11 21:20
yxr
Rank: 1
等 级:新手上路
帖 子:9
专家分:5
注 册:2015-2-11
收藏
得分:0 
字符数组名可以看做是一个常量指针,不能被赋值,而字符指针可以被赋值。而且,char *str="hello world";里面的内容可以改变,比如str[2]=u是合法的;而char str[]="hello world"中,str[2]='u'是不合法的
2015-02-11 22:00
yxr
Rank: 1
等 级:新手上路
帖 子:9
专家分:5
注 册:2015-2-11
收藏
得分:0 
说反了,*str中str[2]='u'是不合法的,而str[]中str[2]是合法的
2015-02-11 22:05
yxr
Rank: 1
等 级:新手上路
帖 子:9
专家分:5
注 册:2015-2-11
收藏
得分:0 
说反了,*str中str[2]='u'是不合法的,而str[]中str[2]是合法的
2015-02-11 22:05
快速回复:请教解答:char *str="hello" 与char str[]="hello" 二者的区别 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016570 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved