Use the macros from inttypes.h to properly print uint64_t

This commit is contained in:
sin 2014-06-04 13:17:57 +01:00
parent 4b58a3fcbe
commit a4e8cf6664
1 changed files with 7 additions and 3 deletions

10
dd.c
View File

@ -8,6 +8,7 @@
*/
#include <errno.h>
#include <fcntl.h>
#include <inttypes.h>
#include <signal.h>
#include <stdio.h>
#include <string.h>
@ -201,9 +202,12 @@ print_stat(const struct dd_config *ddc)
if (ddc->quiet)
return;
fprintf(stderr, "%lu records in\n%lu records out\n%lu bytes (%lu MB) copied, %lu s, %f MB/s [%f mB/s]\n",
ddc->rec_in, ddc->rec_out, ddc->b_out, ddc->b_out/(1<<20),
ddc->t_end - ddc->t_start,
fprintf(stderr, "%"PRIu64" records in\n", ddc->rec_in);
fprintf(stderr, "%"PRIu64" records out\n", ddc->rec_out);
fprintf(stderr, "%"PRIu64" bytes (%"PRIu64" MB) copied", ddc->b_out,
ddc->b_out/(1<<20));
fprintf(stderr, ", %lu s, %f MB/s [%f mB/s]\n",
(unsigned long)ddc->t_end - ddc->t_start,
((double)(ddc->b_out/(1<<20)))/(ddc->t_end - ddc->t_start),
((double)(ddc->b_out/(1000*1000)))/(ddc->t_end - ddc->t_start));
}