首页  >  问答  >  正文

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

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

大家讲道理大家讲道理2715 天前600

全部回复(3)我来回复

  • 迷茫

    迷茫2017-04-17 15:18:11

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

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

    回复
    0
  • PHP中文网

    PHP中文网2017-04-17 15:18:11

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

    回复
    0
  • 迷茫

    迷茫2017-04-17 15:18:11

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

    回复
    0
  • 取消回复