字符串 string c语言中 不存在string,通常把字符数组叫做字符串 c++中 存在string scanf printf 是不支持string类型的,因为它本是c语言的输入输出 字符数组:拥有普通数组的功能(下标),并且有特殊的用法的数据结构 int a[10]; cout<<a;//输出数组首元素的地址 创建 char c[10]; cin>>c;//把输入的hello存到c中,字符数组的变量名可以当成一个整体 cout<<c;//整体输出hello for(int i=0;i<strlen(c);i++){ cout<<c[i];//通过下标输出 } 字符数组获取有效长度:strlen(数组名); char d[20]; cin.getline(d,20);//把输入的hello world存到字符数组d中,输入内容包含空格cin无效 cout<<d;//整体输出hello world 其他字符数组相关的功能函数,可以直接使用 strlen 获取长度 strcmp 比较函数 strcpy 复制函数 strcat 连接函数 strstr/strchr 查找函数 字符串:拥有数组功能的类型(下标),长度没有限制 string s; cin>>s;//输入内容不包含空格可以使用 cout<<s;//可以直接输出 for(int i=0;i<s.size();i++){ cout<<s[i];//可以通过下标分别输出 } getline(cin,s);//输入内容可以包含空格 字符串函数,需要字符串对象(字符串变量)加点调用 size() 获取字符串的大小 s.size() length() 获取字符串的长度,与size()相同 s.length() 其他需要记住的单词: append() 连接 compare() 比较 substr() 字符串截取 find() 查找 c_str() 将字符串变成字符数组 stoi() 将字符串变成int类型 stof() string转float stod() string转double stoll() string转long long string s="10000"; cout<<s*5;//string 和 int 无法进行乘法运算 报错 int a=stoi(s);//将s转换成int类型,就能够进行数学运算了 cout<<a*5; string类型支持 +运算 string s="hello"; char c='A'; int a=50; cout<<s+c;//不报错,表示连接 helloA cout<<c+s;//Ahello cout<<s+a;//报错 无法跟int + cout<<a+s;//报错 cout<<c+a;//115 字符与int进行数学运算,用ascii码进行计算 字符数组:只是存数据,不包含独有的功能 字符串:一个类型整体,包含数据部分,也包含独有的功能 作业: 整理笔记 string 的四个用法集 通读或写一写 信奥一本通:基础(一)第五章 数组 第三节:字符数组和字符串全做完 (责任编辑:admin) |