写在前面的话
- 文档没有任何商业因素,本着共享的精神进行分享,如有素材侵权,请给我留言;
- 文档都是自己平时看书或工作中的笔记,观点错误的地方欢迎留言;
printf、fprintf、sprintf函数
printf
:格式化输出到标准输出设备,函数原型:int printf(const char *format, ...)
;fprintf
:格式化输出到文件流, 函数原型:int fprintf(FILE *stream, const char *format, ...)
;sprintf
:格式化输出到内存,函数原型:int sprintf(char *str, const char *format, ...)
, 使用次函数注意内存溢出,可以改用snprintf()
;
例子如下:
// _printf.c
#include <stdio.h>
int main()
{
int i = 150, j = -100;
double k = 3.14159;
// printf
printf("%s: %d: %d %f %x\n", __FILE__, __LINE__, j, k, i);
printf("%s: %d: %2d %*d\n\n", __FILE__, __LINE__, i, 2, i); // param 2 == %2d
// fprintf
fprintf(stdout, "%s: %d: %d %f %x\n", __FILE__, __LINE__, j, k, i);
fprintf(stdout, "%s: %d: %2d %*d\n\n", __FILE__, __LINE__, i, 2, i); // param 2 == %2d
// sprintf
char *a = "This is string A!";
char buf[80];
sprintf(buf, ">>> %s <<<\n", a);
printf("%s: %d: %s\n", __FILE__, __LINE__, buf);
}