1.printf
字符串格式化命令,主要功能是把格式化的数据写入某个字符串中。sprintf 是个变参函数(在 stdio.h 中定义)。
使用sprintf 对于写入buffer的字符数是没有限制的,这就存在了可能buffer溢出。解决这个问题,可以考虑使用 snprintf和sprintf_s函数,该函数可对写入字符数做出限制。
3.sprintf_s
函数功能:将数据格式化输出到字符串。
sprintf_s()是sprintf()的安全版本,通过指定缓冲区长度来避免sprintf()存在的溢出风险
4.fprintf
fprintf是C/C++中的一个格式化写—库函数,位于头文件<stdio.h>中,其作用是格式化输出到一个流/文件中;函数原型为int fprintf( FILE *stream, const char *format, [ argument ]...),fprintf()函数根据指定的格式(format)向输出流(stream)写入数据(argument)。fprintf()函数根据指定的format(格式)发送信息(参数)到由stream(流)指定的文件. fprintf()只能和printf()一样工作. fprintf()的返回值是输出的字符数,发生错误时返回一个负值.
5.fputc
函数功能: 将字符ch写到文件指针fp所指向的文件的当前写指针的位置。
6.fgetc
意为从文件指针stream指向的文件中读取一个字符,读取一个字节后,光标位置后移一个字节。
这个函数的返回值,是返回所读取的一个字节。如果读到文件末尾或者读取出错时返回EOF。
实例:
1.printf("num = %d\n", num);
2.
char buf[80];
sprintf(buf, "%02x ", c);
3.
char buf[80];
4.
FILE* cpFile = NULL;
fopen_s(&cpFile, "xxx.txt", "w+");
fprintf(cpFile, "%d ", val->ubyte);
第一个参数也可以是stdout,直接输出到控制台。
5.
FILE* cpFile = NULL;
fopen_s(&cpFile, "xxx.txt", "w+");fputc(')', cpFile);
6.
FILE* cpFile = NULL;
fopen_s(&cpFile, "xxx.txt", "w+");char c = fgetc(cpFile);