包括string或string.h

luk*_*mac 15 c++

要使用memset(),有什么区别

#include <string>       //did not work
Run Code Online (Sandbox Code Playgroud)

#include <string.h>     //worked
Run Code Online (Sandbox Code Playgroud)

谢谢!

Rus*_*hPL 30

<string>是一个C++标准库包含,并且<string.h>是C标准库包含的.

相当于<string.h>C++ <cstring>,虽然两者都有效.

区别在于:<cstring>将所有内容包装在std命名空间中,而<string.h>将所有内容放在全局命名空间中.

此外,期待一些更严格的类型安全规则<cstring>.


Ern*_*ill 6

在现代的C++环境中,你会#include <cstring>得到memset().

  • 从技术上讲,你只能保证`std :: memset`,但是所有流行的实现只需要拉入C头并添加一个`using`语句...... (5认同)