1.char(字符)数组
字符数组有空字符\0
例:
char ch1[12] = "nice cat.";
char ch2[12] = {'n','i','c','e','\0','c','a','t','.','\0'};
1)指定数组大小时,确保数组元素长度至少比字符串长度多1,为了确保容纳空字符
2)字符常量'a'占一个字节,字符串常量"a"占两个字节
3)第二个只能输出nice不会有cat
4)数组后面空着的元素都被初始化为\0
2.以指针方式创建字符串
char * pch = "This is a nice cat!";
3.gets语句
格式:get(字符串名称)
gets只能输入一个字符串,从光标开始的地方读到换行符;读了整一行,可以读取空格
scanf是读取到空格
4.puts语句
puts(字符串名称)
输出一个字符串和一个换行符
5.获取带空格的字符数组cin.getline()
cin.getline(数组名,数组长度)
例:cin.getline(str2,30);
string
1.定义:string变量名1,变量名2...;
例:
str1 = "computer";————也是一个数组,如下
str3[0] = 'c';
str2 = str3;
定义&赋初值:
String str4("Compiler");
String str5(str4);
String str6(5,'A');————一共赋值五个字符,每个字符为A
2.字符串输入输出
cin>>str;
cin>>str1>>str2>>str3;
cout<<str;
输入自动舍弃空格,读取字符直至再次遇到空白字符结束读取
3.getline函数
getline(cin,str);
cout<<str;
空格不再作为分隔符,空格为一个普通字符存放到字符变量str中
指定分隔符
getline(cin,str,',');————指定,也是字符串的分隔符,就是输入,输出为空格
string num,name;
getline(cin,num,',');
4.字符串数组
string 数组名[数组长度];
string arr[5];
string arr1[5] = {"one","two",.....};