当我们在C中编写printf()时,我们是在声明它还是定义它?

时间:2017-04-27 16:18:26

标签: c

当我们在C中写printf()时,我们是在声明还是定义? 如果它是一个定义,那么声明在哪里,反之亦然?

4 个答案:

答案 0 :(得分:6)

当我们在C中写printf()时,我们正在调用printf, 在<stdio.h>标题中有声明,如int printf(const char *format, ...);,我们应该在C程序中包含该标题。

printf定义位于标准库实现中 与应用程序代码链接。

答案 1 :(得分:5)

你们两个都没做过:你只是调用一个属于C标准库的函数。

当您#include包含printf声明的标题时,您声明

定义可能是编译器附带的预编译包的一部分。但它可能会在标题中内联。对于某些函数,编译器本身可能会提供定义。

答案 2 :(得分:0)

printf是stdio标头中的预定义函数。您既不会声明它也不会定义它,您可以使用它。

答案 3 :(得分:0)

printf()是一个已在<stdio.h>库中构建的函数。因此,当您#include <stdio.h>引入声明时,将链接该函数。

stdio.hprintf