首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 ><string.h>还是<string>?

<string.h>还是<string>?
EN

Stack Overflow用户
提问于 2011-11-29 23:07:49
回答 6查看 16.3K关注 0票数 21

在C++项目中包含标准头文件string.h的最佳方式是什么?在末尾使用doth,如下所示:

代码语言:javascript
复制
#include <string.h>

或者只是写作

代码语言:javascript
复制
#include <string>

或者,也许,使用另一种我不知道的方式?

谢谢!

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2011-11-29 23:10:09

这是两个不同的头。

  • <string>用于class
  • <string.h>用于c字符串函数(如strlen()等),应为<cstring> std::string c++项目(这是您不知道的第三个项目)。
票数 59
EN

Stack Overflow用户

发布于 2011-11-29 23:11:02

这很不一样!

<string.h>此C样式字符串的库

C++字符串的<string>

按照C++的标准,您应该使用<cstring>而不是<string.h>

票数 7
EN

Stack Overflow用户

发布于 2011-11-29 23:11:46

Wiki说:

标准库还包含了18个以".h“结尾的C++ C90 C标准库的头文件,但已弃用这些头文件。C++标准库中的所有其他头文件都不会以".h“结尾。

C标准库中的每个头文件都以不同的名称包含在C++标准库中,通过删除.h并在开头添加'c‘来生成;例如,'time.h’变成了‘ctime’。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8313054

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档