【发布时间】:2018-08-16 01:19:34
【问题描述】:
我目前正在研究 K&R 的指针。
在第 109 页中,作者声明了方法的函数原型
int getline(char *, int);
char *alloc(int);
即使在此之后,源文件也会在开始时导入它们的标准库。
#include<stdio.h>
#include<string.h>
他们的声明不是在他们的头文件中完成的吗?作者在自己的头文件中声明了这些方法的函数原型的原因是什么?
【问题讨论】:
-
Stdio.h & stdlib.h 不声明您的自定义函数。它们声明了大多数 C 编译器附带的标准库提供的函数。
-
我不知道这本书,但是不知道吗?这些不是标准功能。也许他们在写它的时候回来了,但它是一本非常古老的书。
-
POSIX 在那本书写成几十年后添加了一个getline() 函数,其原型与那本书不同。这可能会给您带来问题?
标签: c header-files function-prototypes