gpt4 book ai didi

c++ - 包括标准头文件。 string.h 还是 cstring?或两者?

转载 作者:IT老高 更新时间:2023-10-28 22:35:47 28 4
gpt4 key购买 nike

Possible Duplicate:
Difference between string.h and cstring?

在包含标准头文件时,C++ 中有什么更好的编程实践

包括cmath代替math.h反之亦然?

包括cstring代替string.h或相反亦然?

对于其他 <c*><*.h>头文件显然似乎完成了同样的事情?

最佳答案

<cstring>较新; <string.h>确实是为了向后兼容(当然还有 C)。区别在于 <cstring>将字符串函数放入 std命名空间,而 <string.h>将它们放在全局命名空间中。

此外,<cstring>更改某些函数的类型以提高类型安全性。例如,C 声明

char *strchr(char const *, int);

被重载替换(在 std 命名空间中)

char       *strchr(char       *, int);
char const *strchr(char const *, int);

<cmath> 的情况下有further differences<math.h>这使得 <cmath>更惯用,不像 C。

首选 <cstring>对于新代码并使用 std::函数的前缀。

关于c++ - 包括标准头文件。 string.h 还是 cstring?或两者?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8749003/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com