string[] strList = str.Split("RCS-")
为什么会报错?无法成string转为char。如果我用单引号为什么又报为字符文本中的字符太多?
str.Split("RCS-")这行代码中,str是一个string类型的变量,而Split()函数的参数是一个char类型的变量,所以会报错,无法将string转为char。如果用单引号,则会报错说字符文本中的字符太多,因为单引号只能表示一个字符,而Split()函数的参数需要一个字符串,所以会报错。
char型是原C库保留,对于char a【】型字符数组,对其处理的函数有----注:以下函数都在头文件中
:1、测量数组长度(即字符个数)strlen ,用法:
int x;
x=strlen(a);
2、字符数组比较函数:strcmp,用法:
char a[m],b[n];
int x;
x=strcmp(a,b);
对两个数组开始逐个字符的进行比较,直到某个字符不相同或者其中一个字符串比较完毕才停止比较。字符的比较为ASCII码的比较。如果a>b,则返回1 ,如果a==b,则返回0,如果a<b,则返回-1.
如a[4]=CSDN和b[4]=CSFN两个数组,对其比较,CC,SS,D>F,停止比较,得到a>b,返回1。
3、字符串连接函数 strcat,用法:
char a[m],b[n];
cout<<strcat(a,b);
作用为将a,b中的字符连接到一起,如a={’C’,‘S’},b={‘D’,‘N’},输出为{‘C’,‘S’,‘D’,‘N’}.
4、字符串赋值函数strcpy,用法:
char a[10],b[]="China";
strcpy(a,b);
效果为将b中的字符串复制到a中
注意:以上函数均不可对string定义的变量使用
补充:对于char字符数组,单个输入字符是不会系统补零,如:char a[2]={‘a’,‘b’};
一次性输入时系统会自动补零,如:char a[ ]=“abfw”;