c++中头文件<string.h> <string>有什么区别麽?还有<cmath> <math.h>

浏览:55日期:2023-04-01

问题描述

如题所示,c++中头文件<string.h> <string>有什么区别麽?还有<math> <math.h>编译器都能过,请指教。

问题解答

回答1:

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

<math>、<math.h>的关系同上。

回答2:

<string.h>对应的C++头文件是<cstring><math.h>对应的C++头文件是<cmath><string>是C++ std::string<math>我也不知道是什么

回答3:

楼上+1.而且,在C++11里面,如果你加.h应该会警告或者报错吧?

相关文章: