为什么strlen函数在没有#include的情况下工作?

快速提问:

无论我是否#include< string.h>,strlen [char *]都能正常工作.或不

我从编译器得到的只是一个关于隐式声明的警告,但在功能上它按预期工作.

这是为什么?

C中的函数原型是 not compulsory.它们是编译器的有用指示,因此它可以对传递给它们的类型进行类型检查.如果不包含string.h,则假定该函数使用默认签名,这就是您收到警告的原因.
相关文章
相关标签/搜索