如果我正在编写自己的字符串函数,那么第一个本能就是创建一个string.h头来包含这些函数的原型。当然,已经有一个string.h文件,它是C语言中标准库集的一部分。这个库有像strcat和strlen等函数。
如果我要添加自己的字符串处理函数,实质上扩展标准库中已有的函数,那么正确的方法是什么?我应该只创建mystring.h并在其中包含string.h,还是将我的东西与现有的string.h完全分开?如果我不想使用string.h,我可以实现自己的string.h,还是一个坏主意?
请注意,我没有重写strcat,我编写了对现有函数添加的不同函数,而不是替换它们。
答案 0 :(得分:1)
如果您正在创建一组新函数,那么您需要使用这些函数的声明创建自己的头文件。
如果另一方面你替换一些现有的字符串函数,即名称和参数是相同的,那么你不需要自己的标题,因为系统标题将适用于那些功能。由于标准库函数是弱符号,您可以正常链接这些替换函数,它们将覆盖系统函数。