C/C++ string和char的区别

C语言
在C中,char是定义一个字符,存储的是一个字符,占一个字节,而字符串是使用’\0’终止的一维字符数组(字符串的长度为字符个数加1,’\0’也占一个长度),定义一个字符串可以如下:

char greet[] = "hello";
//上面的语句可以写成以下语句
char greet[6] = {'h','e','l','l','o','\0'};

C中常用的操作字符串的函数如下:

strcpy(s1,s2) 复制字符串s2到s1
strcat(s1,s2) 连接字符串s2到字符串s1的末尾
strlen(s1) 返回字符串s1的长度
strcmp(s1,s2) 比较字符串的大小,若s1=s2,返回0,若s1> s2 ,返回正数,若s1< s2,返回负数
strchr(s1,ch) 返回一个指针,指向s1中字符ch第一次出现的位置
strstr(s1,s2) 返回一个指针,指向s1中字符串s2第一次出现的位置

C++

单个字符用char定义,如’a’
在C++中,字符串有两种,一种是字符串char[],即C风格的字符串,一种是封装好的字符串类String。
1)C风格的字符串
和C中的字符串一样
2)String类

定义string及一些基本的操作:
string s1 = "hello";
string s2 = "world";
string s3;
//复制
s3 = s1;
//连接两个字符串
s3 = s1 + s2;
//获取字符串的长度
int len = s3.size();
   需要注意的是string中的每一个字符获取时,使用单引号,是char类型
string s = "hell0";
char ch = s[0]; //'h'
      另外,在c++中,C风格的字符串和String类的比较,可以看下面这张图

在这里插入图片描述在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值