char字符数组和string字符串的区别:
char型
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”;
string字符串:
string是C++独有的字符串形式,string字符串可以直接加减,比较大小,赋值,具有极大的优越性,一些常用的对string处理的函数有:
1、如果想对string字符串中的某一个字符进行修改,可以通过一下代码来实现:
string a="China";
a[0]=B; //将C改为了B
2、测量string字符串的长度,
一:使用length()函数:
string a="feaberb";
int x;
x=a.length();
二:使用size()函数:
string a[]="dwinveb";
int x;
x=a.size();
3、比较大小,compare函数:
string a,b;
int x;
x=a.compare(b);
如果b>a,则返回值1;如果b==a,则返回值0;如果b<a,则返回值-1.
但由于string类型可以直接比较大小,故此函数不建议使用。