#include <stdlib.h>
#include <stdio.h>
int main(void)
{
int flag = EXIT_SUCCESS;
char file_name[] = "d:\\data.bin";
FILE *fp = fopen(file_name, "rb");
if (fp == NULL)
{
flag = EXIT_FAILURE;
fprintf(stderr, "fopen() error\n");
}
else
{
fseek (fp , 0 , SEEK_END);
size_t total = ftell (fp);
rewind (fp);
char *str = (char *) malloc (sizeof(char)*total);
if (str == NULL)
{
fprintf(stderr, "malloc error\n");
flag = EXIT_FAILURE;
}
else
{
size_t total_read = fread (str, 1, total, fp);
if (total_read != total)
{
flag = EXIT_FAILURE;
fprintf(stderr, "fread() error\n");
}
else
printf("str = %s\n", str);
fclose(fp);
free(str);
}
}
return flag;
}
/*
run:
str = A text for binary file
*/