string.h  string  cstring 区别

string.h  是  头文件,对应的是基于char*的字符串处理函数 ,如strcmp()等等

string  是  C++  头文件,是字符串类,需要加 using namespace std;

cstring 是是  C++  头文件,包含  字符串的处理函数,需要加 using namespace std。尽管在C++中包含string.h是允许的,但C++标准建议用头文件cstring来替代string.h 


如果要定义string类型,需要#include  和using  namespace  std。如果要使用string的一些处理函数,比如strcpy和strcmp,需要#include  < string>和是两个功能不同的东西。


问题:
a和b是两个string类的字符串,用strcmp比较a和b要怎么做?

答案:
问题是已经是string类了,你为什么需要用strcmp去比较?这是把 C++的风格和C的风格混合再一起,不伦不类的。

不能用strcmp比较:因为string是个类,所以string a,b;那么a,b就是对象。俩个对象不能用strcmp比较,因为没有写这个函数,不过string类中对> < >= <= !=进行了重载,所以你直接用a>b a

当然如果非要用strcmp可以:strcmp( a.c_str(), b.c_str())

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值