当我strdup
在 Microsoft Visual C++ 中使用时,它会警告我:
警告 C4996:“strdup”:不推荐使用此项目的 POSIX 名称。而是使用符合 ISO C++ 的名称:_strdup。详细信息请参见在线帮助。
因此,它似乎_strdup
是正确的。
但是当我_strdup
在 GCC (Fedora Linux OS) 中使用时,编译器显示错误:
错误:未在此范围内声明“_strdup”
使用 GCC 和 Linux,编译器不会为strdup
.
哪个是正确的 -strdup
或_strdup
?
注意:我包含<string.h>
在我的代码中。