C\C++关于string.h头文件和string类
发布网友
发布时间:2022-04-22 16:15
我来回答
共11个回答
热心网友
时间:2023-01-20 14:56
C的字符串头文件是<string.h>,在C++里这个文件变成了<cstring>,string前面的c表示这个是c语言的;而C++的字符串头文件是<string>,是利用的模板实现的,跟原先C的实现方法不一样,但要安全得多。
VC++中有<string.h>文件,它就是C中的那个;
而<cstring>文件实际上只是在一个命名空间std中include了<string.h>,这是因为C++要减少名称污染;
所以两个都是可以用的,但C++鼓励用<cstring>。
<string>为字符串实现了一个类,而其实是依靠模板做的,这个可以先不考虑。使用类,可以将问题局部化,类似于把一个大问题分解成一个个小问题;而且类是具有类型安全的。
所以最好最好用C++的类。
热心网友
时间:2023-01-20 16:14
string.h头文件是用于C程序的。C++用来处理旧的C风格字符串,但一般用等价的头文件cstring。
string头文件中包含标准库类型string的定义,是在C++中处理字符串的一般方法。
在安全性上,string类比C风格的字符串要好的多,一般也比较易用。
补充:TC 3.0是一个很古老的C++编程环境(90年代初),由于C++的标准到1998年才公布,所以一些正确的程序在TC上是运行不了的,比如cstring这样的头文件。
最好的解决方案是抛弃TC,因为实际应用中已经没有人用这个十多年前的古董了。使用VC 6.0以后的版本、BCB较新的版本,或者开源的编程环境如Dev-C++(这个免费)。
热心网友
时间:2023-01-20 17:49
你可以用标准的string,也可以用CString。如果没什么必要还是用string吧。
之所以有CString,那是历史原因。CString诞生的时候,C++标准还没出来。
--问题补充:为什么Turbo C++ 3.0却不可以用string呢?
--tc 3可以编c++的啊,怎么连string都用不了?
C++标准是98年出来的。tc3是98年以前出来的,所以你应该用新点的编译器。用VC2005,这个比较符合标准
热心网友
时间:2023-01-20 19:40
这两个一个是标准C库的,定义了一些字符串的处理函数.一个是标准C++库的,定义了标准C++的std::string类.
要用这个类要包含头文件<string>...如下;
#include <string>
using namespace std;//关于名字空间有兴趣自己查去,一般用标准库这句就行了
当然标准C库也是标准C++库的一部分,要用标准C库里的处理函数...如下:
#include <string.h>//所以你用这句包含的自是标C的头文件
...或者用如下C++风格的,它们是等价的,不过比较推荐:
#include <cstring>
using namespace std;
CString类是MFC的类,...不搞Windows MFC编程用不到
热心网友
时间:2023-01-20 21:48
都是一样的,C++包含了C语言的所有功能,Cstring也就是C语言的类,在程序调用的什么两个都一样。
热心网友
时间:2023-01-21 00:13
不懂
热心网友
时间:2023-01-21 02:54
注意 VC 和 标准C 有很大的不同
http://kenanlee.blogspot.com
参考资料:http://kenanlee.blogspot.com
热心网友
时间:2023-01-21 05:52
h
热心网友
时间:2023-01-21 12:38
55
热心网友
时间:2023-01-21 16:26
g
热心网友
时间:2023-01-21 20:31
两个都有有啊