c++数据类型string

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012142460/article/details/85009909

c++中数据类型大部分和c语言都一样,像整型,浮点,char,结构体,数组等等,有区别的一点是c++中提供了字符串类型string,更严谨一点,string是c++提供的一个类。这一点是c语言中没有的,c语言中是以字符数组来存储字符串的。

        要使用string类,必须在程序中包含头文件string。string类位于名称空间std中。string类定义隐藏了字符串的数组性质,让您能够处理普通变量那样处理字符串。

#include <iostream>                                                                                                                                              
#include <string>
int main()
{
        using namespace std;
        char name[20];
        string country;
        cout << "enter your name:";
        cin >> name;
        cout << "enter your country:";
        cin >> country;

        cout << "my name is:" << name <<endl;
        cout << "I am from " << country << endl;
}

string对象和字符数组之间的主要区别是,可以将string对象声明为简单变量,而不是数组。

       类设计让程序能够自动处理string的大小,string声明一个对象时,长度为0,在程序将输入读取到country中时,country自动调整大小。这点与字符串数组相比,更加方便,也更加安全,不会存在越界的问题。从理论上说,可以将char数组视为一组用于存储一个字符串的char存储单元,而string类变量是一个表示字符串的实体。

   string类的赋值、拼接和附加

使用string类时,某些操作比使用数组更加简单,例如,不能将一个数组赋给另一个数组,但可以将一个string对象赋给另一个string对象。

string类还简化了字符串合并操作,可以使用+操作符将两个string对象合并起来。,还可以使用操作符+=将一个字符串附加到一个string对象的末尾。

#include <iostream>
#include <string>
int main()
{
        using namespace std;
        string str1;
        string str2 = "hello";
        str1 = str2;
        cout << "str1:" << str1 << endl;
        cout << "str2:" << str2 << endl;

        string str3 = "world";

        str2 += str3;

        cout << "str2 +str3 = "<< str2 << endl;
}

执行结果:

猜你喜欢

转载自blog.csdn.net/u012142460/article/details/85009909