(fprintf类似于写,写入文件;fscanf像是读,从文件中读取)
调用方式为:
int fprintf(文件指针,格式字符串,输出表列 ) 返回值:返回实际输出的字符数,操作不成功返回EOF
int fscanf(文件指针,格式字符串,输入表列 ) 返回值:返回输入的数据个数,操作不成功返回EOF(注意:输入列表中的取地址符号)
sprintf和sscanf
sprintf 跟printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出。这也导致sprintf 比printf 有用得多。
int sprintf( 字符指针, 格式字符串 , 输出列表 );
如:把整数123 打印成一个字符串保存在s 中。
char * s;
sprintf(s, "%d", 123); //产生"123"
可以指定宽度,不足的左边补空格:
sprintf(s, "%8d%8d", 123, 4567); //产生:" 123 4567"
当然也可以左对齐:
sprintf(s, "%-8d%8d", 123, 4567); //产生:"123 4567"
sscanf函数和scanf函数也很像,只不过是scanf是从控制台下用户自己输入的,而sscanf是从字符串中读取数据,而不用用户输入了(相当于用户输入的字符串是buffer).后面的argument是要存储的位置。在匹配的过程中,只要遇到不匹配的情况,sscanf就结束运行。
sscanf函数返回值的含义是有多少个变量被赋值。
int sscanf( 字符指针, 格式字符串 , 输出列表 );
sprintf组合字符串,sscanf拆分字符串