1 2 3 4 5 6 7 8 9 10 11 12 13
| #include <stdio.h>
int printf(const char *format, ...); int fprintf(FILE *stream, const char *format, ...); int sprintf(char *str, const char *format, ...); int snprintf(char *str, size_t size, const char *format, ...);
#include <stdarg.h>
int vprintf(const char *format, va_list ap); int vfprintf(FILE *stream, const char *format, va_list ap); int vsprintf(char *str, const char *format, va_list ap); int vsnprintf(char *str, size_t size, const char *format, va_list ap);
|
不带v的处理不定长参数(见不定长参数,处理完ap参数就变得不再确定了),带v处理固定参数。
带n写最多size字节到str中(包括结尾的'\0')。
成功就返回写出去的字节数(包括结尾的'\0')。带n的需要注意,**返回值表示能够装下输出结果的大小,也就是说,如果返回值大于size,说明输出结果被截断了,只输出了size大小——不包括'\0'**。