vfprintf/fprintf格式与参数不匹配导致输出错误
由于fprintf可以认为是vfprintf的封装,这俩的行为比较一致。以fprintf为例来说明。
int main() { double a = 100.0999; int b = 10000; FILE *file = fopen("file_test", "w"); fprintf(file, "a: %d, b: %d", a, b); fclose(file); return 0; }
在上面的例子中,打印会出现错误,a和b的值可能都打印错误。但是这种情况在printf中不存在,即使格式与参数不匹配,printf仍然能够正确打印。
浙公网安备 33010602011771号