C++,关于string类的使用

要使用string类,必须在程序中包含头文件string。
string类位于名称空间std中

可以将string对象赋给另一个string对象,也可以将char数组赋给string对象

可以使用 + 和 += 进行字符串合并操作

可以用数组表示法来读取和修改存储在string对象中的字符

string对象之间(或string对象与C-风格字符串之间)可以判断是否相等,也可以进行比较。比较的规则与字符串之间的比较相同,为:“按字母顺序”比较。具体为,之比最前面的字符,在系统中顺序靠前则比较小,如果前面的字符相同,再依次后推,直到有不同出现。

不要试图对string对象进行任何指针相关的操作

string对象的整行输入方式为:

getline(cin, str_01);


要表示string对象的长度不能使用sizeof(),而应使用.size()
(sizeof(string)在同一编译器中是固定的)

string str_1 = "abcd";
cout << str_1.size();

空的string对象长度为0

。。
。。
。。

string对象不使用空字符标记字符串末尾,给string对象中的某项赋值’\0’并不能使其在输出时提前结束,而只会把该项变为空格

string str_1 = "abcdefghijkl";
cout << str_1 << endl << endl;
str_1[3] = '\0';
cout << str_1 << endl;

输出结果为
abcdefghijkl

abc efghijkl
。。
。。
。。
。。
32位编译器中,sizeof(string)永远是28;
64位编译器中,sizeof(string)永远是40;
这与string对象的长度并无关系

类设计让程序能自动处理string的大小。
例如


string str1;//这将创建一个长度为0的string对象

cin >> str1;//当程序将输入读取到str1中时,将自动调整str1的长度

这使得与使用数组相比,使用string类更方便,更安全

猜你喜欢

转载自blog.csdn.net/Monody_theone/article/details/108678855