| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 709 人关注过本帖
标题:char s="abc"
只看楼主 加入收藏
njzhangyuhao
Rank: 2
等 级:论坛游民
帖 子:197
专家分:35
注 册:2010-11-20
结帖率:100%
收藏
 问题点数:0 回复次数:8 
char s="abc"
s在内存中占用4个字节 为什么是错的
2011-06-01 16:56
我不是郭靖
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:494
专家分:6
注 册:2006-10-4
收藏
得分:0 
这个定义对吗?

2011-06-01 17:03
我不是郭靖
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:494
专家分:6
注 册:2006-10-4
收藏
得分:0 
应该是char *s吧

2011-06-01 17:03
hjywyj
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:1114
专家分:2611
注 册:2010-4-14
收藏
得分:0 
char *s="abc";
或者char s[]="abc";
2011-06-01 17:51
lz1091914999
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:四川
等 级:贵宾
威 望:37
帖 子:2011
专家分:5959
注 册:2010-11-1
收藏
得分:0 
"abc"是一个地址

My life is brilliant
2011-06-01 17:58
烟雾中的迷茫
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:621
专家分:1069
注 册:2011-2-9
收藏
得分:0 
看不懂
2011-06-01 21:10
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:0 
因为你定义就是错的  

char *s="abc";//s是个指针  abc字符串存储在 DS区域  数据段  指针在32为系统栈四个字节  但是这里的字符串也占四个字节
或者char s[]="abc";  //这个字符串存储在栈区  SS段

                                         
===========深入<----------------->浅出============
2011-06-01 21:18
apull
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:三体星系
等 级:版主
威 望:216
帖 子:1506
专家分:9241
注 册:2010-3-16
收藏
得分:0 
定义错误,char 定义的是字符类型,内存里保存的是字符的ascii码。而双引号里面是字符串类型的,char s="abc" 赋值错误。应该是char s='a';
字符串定义用指针 char *s="abc"
2011-06-02 13:25
刘定邦
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:687
专家分:1570
注 册:2010-9-21
收藏
得分:0 
定义错了。你定义一个字符变量。怎么能将字符串赋值给它呢。
2011-06-02 13:30
快速回复:char s="abc"
数据加载中...
 
   



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

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