string string.h=cstring=str

Posted shoutcharter

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了string string.h=cstring=str相关的知识,希望对你有一定的参考价值。


<string.h>

<string.h>是C版本的头文件,包含比如strcpy、strcat之类的字符串处理函数。

<cstring>

在C++标准化(1998年)过程中,为了兼容以前,标准化组织将所有这些文件都进行了新的定义,加入到了标准库中,加入后的文件名就新增了一个"c"前缀并且去掉了.h的后缀名,所以string.h头文件成了cstring头文件。但是其实现却是相同的或是兼容以前的,这就是<cstring>的来源,不要觉得又多了一个东西。相当于标准库组织给它盖了个章,说“你也是我的标准程序库的一份子了”。

<string>

<string>是C++标准定义的头文件,它定义了一个string的字符串类,里面包含了string类的各种操作,如s.size(), s.erase(), s.insert()等。但<string>又包含了老的C版本的字符串操作如strcpy、strcat等,这就相当于,在<string>的文件中除了定义自己的string类之外,还加了一个#include<string.h>一句包含了C版本的字符串操作。

 

没有<cstring.h>这样的头文件。

以上是关于string string.h=cstring=str的主要内容,如果未能解决你的问题,请参考以下文章

c++字符串使用

string和string.h和cstring之间的关联

string和cstring头文件的区别

C++中 string 和cstring 头文件 有啥区别????

C\C++关于string.h头文件和string类

C++中,<cstring>、<string.h>和<string>的关系,①这几个各在啥时候使用?需不需要命名空间?