c - 我应该如何扩展标准功能,例如 C 中的字符串函数?

标签 c header

如果我正在编写自己的字符串函数,第一直觉是创建一个 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/

相关文章:

html - 我无法让我的页眉图片适合页面内容

c++ - 仅 header 库中的 "Does not name a type"

java - 从技术上讲,您可以在 main 方法中调用 string[] 吗?

xcode - 在 xcode 中创建框架时保留目录结构

c - 什么是错误 : expected ')' before ';' token|

c - 这个找出 1-n 个数字之间的素数的程序有什么问题?

c - 高性能阅读 - linux/pthreads

c - 如何列出物理磁盘?

c++ - 如何从原始指针获取 shared_ptr?

vb.net - 如何通过 vb.net 在单词页眉/页脚中插入多个项目?