string
来源:互联网 发布:gta5捏脸数据男欧美 编辑:程序博客网 时间:2024/06/15 08:34
字符串:初始化
string s; string s1 = "lixiaojie"; string s2(s1); string s3 = s1;//等价于s3(s1) string s4(5, 'c'); string &s5 = s1; cout << "length="<<s1.length()<<" size="<<s1.size() << endl;//length=9 size = 9
解释:=:拷贝初始化(copy initialization),编译器把等号欧策的初始值拷贝到新建的对象中去,如果不适用等号,则执行的是直接初始化(direct initialization)
string 对象上的操作cin>>s;//读取字符串,遇到空格结束cout<<s;string w;while(cin>>w){...}//读取未知数量的string对象,可以用:getline(cin , s);//可以读取一整行字符,包括空格//使用getline读取一整行s.empty();//判断是否为空s.size();//返回string对象中字符的个数s1==s2;//比较,对大小写敏感 类似于> >= < <= !=s1+=s2;//字符串拼接
range for
for(auto c: s){cout<<c};//类似于java里的增强for啊for(auto &c : s){c = 'd'};//通过引用改变s的内容
访问string对象中的单个字符
方法1:使用下标 s[0]~s[s.size()]
方法2:使用迭代器
note:
size()函数的返回值是size_type类型:是一个无符号整型,当n为负数时,size()小于n为true,因为此时n会自动转型为一个特别大的无符号数。因此存在size时,就不要用int了
string对象相加:
s1 = s1+"lixiai";//正确,字面值lixiai会自动转换成string对象 s2 = "ldj"+"d";//错误,两个运算对象都不是string s3 = s1+"lixiai"+",";//正确 s4 = "lixiai"+","+s1;//错误
3.字符串字面值并不是标准类型string对象
0 0
- string
- String
- String
- string
- string
- String
- string
- String
- string
- string
- string
- string
- String
- String
- string
- string +
- String
- String
- Linux进程间通信——使用共享内存
- js数组的操作
- Servlet中Response对象应用2(输出随机验证码图片)
- Sqlserver 链接服务器和同义词
- MapReduce小作业
- string
- leetcode gas-station【最大序列变形】
- Android中的GraphicBuffer同步机制-Fence
- vim插件和配置
- 杭电OJ 1003 Max Sum
- JS学习-js内置对象
- Android,JCVideoPlayerStandard,节操,视频播放
- Idea Spring boot+Maven 打包war 发布 外部tomcat
- 如何用一台电脑绑定多个github账户