社区
新手乐园
帖子详情
string对象s和s[0]的差别是什么?
CExp001
2006-08-19 02:18:54
string s;
那么,s和s[0]有什么不同呢?
...全文
366
9
打赏
收藏
string对象s和s[0]的差别是什么?
string s; 那么,s和s[0]有什么不同呢?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xyly30
2006-08-21
打赏
举报
回复
用一个输出语句实验一下应该可以得到你想要的答案吧。
Fin_Soul
2006-08-21
打赏
举报
回复
string支持随机迭代器,故它支持“[]”操作。
林道洪崖不周峰
2006-08-20
打赏
举报
回复
一个是代表首地址
一个是代表一个字符
rollor_phoe
2006-08-20
打赏
举报
回复
string s;
如果用
cout<<s;
cout<<s[0];
有什么区别?
-----------------
如果你这样:
string s("abcde");
cout<<s; //这个会输出abcde
cout<<s[0]; //这个会输出a ,和数组差不多。
lianhoo
2006-08-19
打赏
举报
回复
同意楼上的观点
plamlover
2006-08-19
打赏
举报
回复
string s;
如果用
cout<<s;
cout<<s[0];
有什么区别?
~~~~~~~~~~~~~~~~~~~~~
首先string是一个类,之所以你能够用s[0],是因为此类中重载了[]。
其用法有点像数组,s相当于你所传递字符串的首地址,s[0]相当于你所传递字符串的第一个字符。
CExp001
2006-08-19
打赏
举报
回复
string s;
cout<<s;
couts[0];
输出是否相同?为什么?
CExp001
2006-08-19
打赏
举报
回复
如果用
cout<<s;
cout<<s[0];
有什么区别?
我啃
2006-08-19
打赏
举报
回复
s是一个std::string类型,s[0]是一个char你说呢
String
s = new
String
(“abc”);创建了几个
String
对象
?请简述一下。
String
s = new
String
(“abc”);创建了几个
String
对象
?请简述一下。 建了两个,如果栈中的常量区存在该变量那么在常量区中将不会创建这个变量“abc”,又因为使用了new运算符所以会在堆中创建这么一个
String
对象
;相反如果栈中的常量区不存在该变量那么将会在常量区中创建该变量,所以这种情况将会创建两个
String
对象
可能是一个也可能是两个
String
对象
,一...
String
s = null ;
String
s = new
String
();
String
s =““ ;
String
s ;有什么区别?
1.
String
s =null :未申请任何内存资源,只是声明了
对象
的引用,并没有把
对象
真正的实例化出来,仅仅是把栈内存的
String
引用指向了一个null,表示声明了一个引用变量并初始化引用,但是该引用没有指向任何
对象
.但可以把它作为参数传递或其它使用,但是不能调用它作为
对象
的方法。 2.
String
s ="" 和
String
s = new Stirng();是真正的把
对象
创造出来,并把
对象
放到堆内存里。
String
s=""; 表示申请了内存资源,但资源空间值为空。该语句表示声明并引用到一个对
String
s = hello; s = s + world; 执行后原始的
String
对象
内容是否改变
String
s = “hello”; s = s + “world”; 执行后原始的
String
对象
内容是否改变? 一 :
String
s = “hello”; s = s + “world”; 执行后原始的
String
对象
内容是否改变? 因为
String
是不可改变的类,所以他的所有
对象
都是不可变的; s 原先指向的
对象
是内容为hello的
对象
,然后进行了+操作,此时会创建一个内容为worl...
String
s=new
String
(“a“)到底创建了几次
对象
?
1.首先你肯定知道
String
类是不可变的.当jvm看到"a",便在串池中寻找,找不到 jvm会创建一个
对象
,这里创建了一个
对象
,然后new 是 在内存上创建
string
对象
,并将其返回给s,又一个
对象
,所以一共创建了两个
对象
. 2.那么
String
s=new
String
("a"+"b");创建了几次
对象
? 当jvm 看到 "a","b"时候 各创建了一次
对象
,"a"+"b"又创建了一个...
String
s=new
String
(“xyz“) 创建了几个
对象
(详细解析)
String
s=new
String
("sdd") 这个产生了2个
对象
,一个是new关键字创建的new Sring();另一个是“sdd”
对象
,abc在一个字符串池中s这个
对象
指向这个串池 这个题的考点知识很多: 引用变量与
对象
的区别; 字符串文字"abc"是一个
String
对象
; 文字池(pool of literal
string
s)和堆(heap)中的字符串
对象
。 一、
新手乐园
33,322
社区成员
41,774
社区内容
发帖
与我相关
我的任务
新手乐园
C/C++ 新手乐园
复制链接
扫一扫
分享
社区描述
C/C++ 新手乐园
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章