问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

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

两个都有有啊
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
女生多大后可以不在长身高? 如何不用软件把手机投屏到电脑上手机屏幕怎样投放到电脑上 战时拒绝、故意延误军事订货罪既遂的处罚? 战时故意延误军事订货罪处罚标准 名师1+1导读方案:汤姆·索亚历险记目录 三星sm-g7200打开微信慢,无法正常收看,网速不慢。 笔记本电脑如何调亮屏幕亮度 大伙说说洗衣机要不要带烘干好 热烘干洗衣机怎么样 ef英语哪个好 C++ string在头文件中的使用 蜂蜜柚子水孕妇能喝吗 问:瓶装蜂蜜柚子水能加热喝吗? 早上能空腹喝蜂蜜柚子水吗 喂奶期母猫能喝蜂蜜柚子水吗 怎样做蜂蜜柚子水 坐月子可以喝蜂蜜柚子水 蜂蜜柚子水能解酒吗 蜂蜜柚子水的正确做法 怎么改IP,我是家里的电脑 电脑qq邮箱大附件怎么下?没有下载选项点进去是空白 涓轰粈涔堟垜镓嬫満鍒囨崲鍏跺畠绋嫔簭镞讹紝椋炰俊镊&#xFFFD;姩鍏% QQ邮箱里的附件下载完为什么看不了 QQ邮箱接收文件下载成功之后打不开? 我用迅雷下载qq邮箱里的附件,下载完成后大小都是5.24kb,而且打开之后都是空白是什么原因? 为什么qq邮箱下载的文件打开什么都没有 qq邮箱的文件用手机怎么打开 404 Not Found 为什么QQ邮箱里的附件下载了却显示文件不存在? 为什么QQ邮箱里的附件下载后一片空白 VC++中的string类要包含什么头文件? c语言余数怎么表示 C++中 string 和cstring 头文件 有什么区别???? C++里面头文件&lt;string.h&gt;的用处是什么? string.h头文件中有什么函数 c++ string头文件谁知道 C&#92;C++关于string.h头文件和string类 如何在头文件中定义string类型 请C++高手们帮忙解答:关于使用string时可不可以用头文件#include&lt;string.h&gt;的问题 谢谢! #include&quot;string,h&quot;这是c中的什么函数的头文件啊? vc++不能使用string头文件. 为何大同煤业,601001要买涨不买跌? 支付宝直接通过银行卡转账收费吗 现在支付宝转账到银行卡要收费吗 用支付宝转账到银行卡要手续费吗 现在通过支付宝转账到银行卡收费吗? 通过支付宝直接将钱从银行卡转到银行卡收手续费吗 支付宝转账到银行卡收费吗? 用支付宝银行卡直接转账到银行卡要收费吗 新买的毛笔是用冷水泡还是热水泡