C++语言
-
string类型、
- 与C语言的字符数组相似、两者可互用、暂看成一个类的类型、
-
定义和初始化string对象
-
string a1;//默认初始化、空串、表示里面没有字符、 string a2 = "这是一段字符串"; //将字符串拷贝到a2中、此时a2代表一段内存、内存大小取决给的字符串的值大小、此拷贝不包含末尾的 string a3 ("这是一段字符串");//效果同a2 string a4 = a2;//将a2的内容拷贝到a4、但是a2和a4 并非共用一个内存、
-
-
string对象上的操作、
-
判断是否为空、emoty()返回布尔值、
-
if (a1.empty()) { cout<<"a1里面没有内容"<<endl; }
-
-
size()或者是lingth()、代表返回字符串的长度、
-
cout << a1.size()<< endl; cout << a2.length() << endl;
-
-
a[n];
-
返回a中的n个字符n代表位置、取值范围是0开始、到size()-1为止、
-
string a1;//默认初始化、空串、表示里面没有字符、 string a2 = "这是一段字符串"; //将字符串拷贝到a2中、此时a2代表一段内存、内存大小取决给的字符串的值大小、此拷贝不包含末尾的 string a3 ("asdfghjkl");//效果同a2 string a4 = a2;//将a2的内容拷贝到a4、但是a2和a4 并非共用一个内存、 if (a3.size()>5) { cout << a3[5] << endl; a3[5] = 'q';//修改院a3中的字符串内容、 } cout << a3[5] << endl;
-
-
-
a1+a2表示两个字符串的相加、
-
赋值
-
string a3=a4;//这是定义是初始化、 a3=a4;//这是赋值、
-
-
==判断字符串是否相当、string大小写敏感、大写和小写是不同的字符、、
-
!=不相等、
-
a.c_str();返回一个字符串a中的内容指针、目的是为了和C语言相兼容、返回一个指针正规的c字符串指针变量、
-
string a6 = "abC"; const char* b = a6.c_str();//常量指针、因为会返回一个常量指针、 char d[20]; strcpy_s(d, sizeof(d), b); cout << d << endl; }
-
C++转C
-
string a6 = "abC"; const char* b = a6.c_str();//常量指针、因为会返回一个常量指针、 char d[20]; strcpy_s(d, sizeof(d), b); cout << d << endl; string a5 = (d);//用C语言的字符数组初始化string类型、
-
-
-
读写string对象、
-
输入
-
string a7; cin >> a7;//从键盘输入 cout << a7 << endl;
-
-
-
字面值和string相加、
-
string a1="asd"; string a2="jkl"; string a3=a1+" zxc"+a2+" g"; cout<<a3<<endl;
-
两个字符串不能挨得相加、会报语法错误、中间添加siring类型便可相加、
-
-
范围for(C++11中提供的)对siting的使用、遍历序列中的的每一个元素、string看成一个字符序列、
-
int main() { string a1 = "zifuc"; for (auto b : a1) { cout << b << endl; } }
-
-
toupper——将小写字符改成大写字符、如果是大写字符则没有反应、
-
-
string 标准库提供的 处理可变长字符串、vector是一种集合和容器的概念、