1.字符串变量的定义和引用
- C++提供了一种新的数据类型—字符串类型(string类型)。
- 头文件#include
- 定义:string str1; string str2=”china”//定义字符串变量时不需指定长度,长度随其中的字符串长度改变。
- 赋值:str=”Canada”; str2=str;//不必考虑等号两边的字符长短和越界问题
对字符串变量中某一字符进行操作,如:
string word = "then";
word[2]='a';
字符串输入: cin>>str;
- 字符串输出:cout<<str;
- string不是C++语言本身具有的基本类型,它是在C++标准库中声明的一个字符串类。
- 每个字符串变量都是string类的一个对象。
- 字符串复制: str2=str1;
- 字符串连接: str3=str1+str2;
- string string1=”C++”; //定义string1并赋初值
- string string2=”Language”; //定义string2并赋初值
- string1=string1+string2; //连接string1和string2
- 连接后string1为”C++ Language”
- 字符串比较: =、>、<、!=、>=、<=
2.字符串数组
例:
string name [5]={"Zhang","Li","Fun","Wang","Tan"};

- 每个字符串元素的值只包含字符串本身而不包括’\0’.
- 在定义字符串数组时怎样给数组分配存储空间?
- 编译系统为每一个字符串变量分配4个字节,在这个存储单元中,并不是直接存放字符串本身,而是存放字符串的地址。
- 字符串变量中存放的是字符串的指针(字符串的地址)。
3.字符串运算实例
- 输入3个字符串,要求将字母按由小到大输出
#include<iostream> #include <string> using namespace std; int main( ) {string string1,string2,string3,temp; cout<<″please input three strings:″; cin>>string1>>string2>>string3; if(string2>string3) {temp=string2; string2=string3; string3=temp; } if(string1<=string2) cout<<string1<<″ ″<<string2<<″ ″<<string3<<endl; else if(string1<=string3) cout<<string2<<″ ″<<string1<<″ ″<<string3<<endl; else cout<<string2<<″ ″<<string3<<″ ″<<string1<<endl; }