c++ c串的理解 char*

28 篇文章 4 订阅

C-串:
char buffer[7]=“Hello!”;//若buffer[6],则出错,(字符字面值buffer,类型为char

H'|'e'|'l'|'l'|'o'|'!'|0            //空间存储格式,以全0位字节作为结束符。

C-串的空间长度为字符串长度加1;
C-串的类型为char*,说的更精确一点是const char* 。char* 成为字符指针,它与字符数组虽然类型不同,但操作上是一样的,都表示C-串的起始地址

char* str ="Hello";
cout <<*str <<endl; //显示H
cout <<str <<endl;//显示Hello

字符数组是不可以直接比较和赋值的,下面的就是错误的:

hello"=="hello"? "":"not"//错:数组 是不能直接比较大小的,比较相同的c-串时,会因空间位置不能而不同
    char a1[6]="hello";
    chat a2[6]=a1;//错:数组是不能直接复制的    

c-串操作:头文件

strcmp(str1,str2);//比较
    strcpy(a,str1);//复制给a
    strcat(a,s);//连接
    strrev(a);//倒置
    strset(a,'c');//设置,将a数组的所有值设为c
    strstr(s1,"ell");//查找串
    strchr(s1,'c');//查找字符

string与string.h是不一样的,string是指string字符串,string.h头文件是指多字符空间操作的库函数集合。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值