字符串与字符数组

来源:互联网 发布:java 修饰符 编辑:程序博客网 时间:2024/04/29 15:10
  •  字符数组:存放char类型的数组

  • 字符串:是一种特殊的字符数组,C++没有专门的字符串类型,一个字符串即为一个字符数组,不过字符串最后面还有“\0”表示字符串结束

char array[];char array[]={'h','g','f'...};char b[]={"hello"};  //长度为5,等同于char b[]={‘h’,'e','l',...}; char b[]=""hello";  //长度为6求数组长度方法int larray=sizeof(array)/sizeof(char);int lb=strlen(b);
  • 字符串处理函数:
    • strcmp(字符数组名1,字符数组名2):按ASCII码值的顺序比较两个数组中的字符串,其返回结果可能有:
      • 两字符串相等时,返回0;
      • 1>2时,返回>0;
      • 1<2时,返回<0;
    • strcpy(串1,串2):不能用一个字符串给另一个字符串赋值,如char name[10]; name="jaho";不合法
      • 把串2复制到串1,结束符\0也一起复制,串2可以是字符串常量
      • strcpy()没有返回值,且源字符串已有的字符会被覆盖
    • strcat(串1,串2):串2接到串1后面,并删去串1后的\0,返回值为串1 的首地址
    • strlen(串名):计算串的实际长度(不含\0),并返回此值
      • 字符串不能包含空格,否则只会计算空格前的字符串长度
    • 字符串的输入/输出:gets(串名)   puts(串名)   ,使用串名前,必须先声明字符串
      char n[10];int i,j;cout<<"请输入不超过10个字符:";    for(i=0;i<10;i++){cin>>n[i];  //或用gets(n)if(n[i]=='q')break;}cout<<"倒序输出:"<<endl;for(j=i-1;j>=0;j--)cout<<n[j]<<" "; //或用puts(n)cout<<endl;
原创粉丝点击