您的位置:首页 > 编程语言 > C语言/C++

qt开发环境 - c++字符串操作

2017-08-13 17:31 489 查看
#include <QCoreApplication>
#include <iostream>
#include <string>
#include <cstring>

using namespace std;

int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
//c++的字符串定义
string s1;
cout << '[' << s1 << ']'<< endl;
string s2("ayumi hamasaki");
cout << '[' << s2 << ']'<< endl;
//c字符串和c++字符串,c++支持把c风格的字符串隐式转换为c++风格
string s3 = "字面值mai kuraki";//字面值隐式转换
cout << '[' << s3 << ']'<< endl;
char const* ps = "字符指针mai kuraki";
cout << '[' << ps << ']'<< endl;
s3 = ps;
cout << '[' << s3 << ']'<< endl;
char sa[] = "字符数组mai kuraki";
cout << '[' << sa << ']'<< endl;
cout << strlen(s3.c_str()) << endl;//字符串成员函数,可以获得c的首地址
//字符串的赋值 对应c strcpy
string s4("ayumi hamasaki……");
s3 = s4;
cout << '[' << s3 << ']'<< endl;
//字符串的拼接 对应c strcat
string s5("I love ");
s3 = s5 + s4;
cout << '[' << s3 << ']'<< endl;
//字符串复合赋值
s5 += s3 += s4;//右结合
cout << '[' << s5 << ']'<< endl;
//字符串的比较 ASCII 长度 strcmp
string s6 = "abcd", s7 = "abCd", s8 = "abcde";
cout << (s6 > s7) << endl;
cout << (s6 > s8) << endl;
s6 = "擎天柱";
s7 = "威震天";
s8 = "大黄蜂";//按照编码
cout << (s6 > s7) << endl;
cout << (s6 > s8) << endl;
//下标访问
cout << s4[2] << endl;
//字符串的大小 不包括 /0
cout << s5.size() << endl;
cout << s8.length() << endl;
//判断字符串是否为空
cout << s8.empty() << endl;//0
s8.clear();
cout << s8.empty() << endl;//1

return a.exec();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: