如果我正在编写自己的字符串函数,第一直觉是创建一个 string.h header 以包含这些函数的原型(prototype)。当然,已经有一个 string.h 文件,它是 C 中标准库集的一部分。该库具有 strcat 和 strlen 等函数。
如果我要添加自己的字符串处理函数,实质上是扩展标准库中已有的内容,那么正确的方法是什么?我应该只创建 mystring.h 并在其中包含 string.h,还是让我的东西与现有的 string.h 完全分开?如果我不想使用 string.h,我可以只实现我自己的 string.h,还是一个坏主意?
请注意,我不是重写 strcat,我是在编写不同的函数来补充现有函数,而不是替代它们。
最佳答案
如果您要创建一组新函数,则需要使用这些函数的声明创建自己的头文件。
另一方面,如果您要替换一些现有的字符串函数,即名称和参数相同,那么您不需要自己的 header ,因为系统 header 适用于那些功能。由于标准库函数是弱符号,您可以正常链接这些替换函数,它们将覆盖系统函数。
关于c - 我应该如何扩展标准功能,例如 C 中的字符串函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45063706/