printf的签名是什么?

Tom*_*mmy 6 c

最近在一次采访中,我被问到printf的签名是什么.我真的无法得到正确的答案.有人能够对此有所了解吗?

And*_*ite 22

int printf ( const char * format, ... );
Run Code Online (Sandbox Code Playgroud)

他们可能会问这个问题,看看你是否熟悉可选参数语法"...".这允许您传递将填充格式字符串的不确定变量列表.

例如,可以使用相同的方法打印如下内容:

printf("This is a string: %s", myString);
printf("This is a string: %s and an int: %d", myString, myInt);
Run Code Online (Sandbox Code Playgroud)


Eva*_*ran 6

printf是一个具有以下签名的可变函数:

int printf(const char *format, ...);
Run Code Online (Sandbox Code Playgroud)

这意味着它有一个必需的字符串参数,后跟0或更多参数(可以是各种类型).最后,它返回一个int,表示结果中有多少个字符.

可选参数的数量和类型由格式字符串的内容确定.