i am receiving 472 still reachable byts in this code even though I'm closing file, why?
int print_user(const User *user) {
    if (user == NULL) {
        return 1;
    }
    int c;
    FILE *file;
    file = fopen(user->profile_pic, "r");
    if (file != NULL) {
        while ((c = fgetc(file)) != EOF)
            printf("%c", c);
        fclose(file);
        printf("\nName: %s\n", user->name);
    }else {
        fclose(file);
        printf("Name: %s\n", user->name);
    }
    printf("------------------------------------------\n");
    printf("Friends:\n");
    for (int i = 0; i < 10; i++) {
        if (user->friends[i] != NULL) {
            printf("%s\n", user->friends[i]->name);
        }
    }
    printf("------------------------------------------\n");
    printf("Posts: \n");
    Post *cur_post = user->first_post;
    while (cur_post != NULL) {
        if (cur_post->next != NULL) {
            printf("From: %s\n", cur_post->author);
            char *date_str = ctime(cur_post->date);
            printf("Date: %s\n", date_str);
            printf("%s\n\n", cur_post->contents);
            printf("===\n");
            cur_post = cur_post->next;
            printf("\n");
        }
        else {
            printf("From: %s\n", cur_post->author);
            char *date_str = ctime(cur_post->date);
            printf("Date: %s\n", date_str);
            printf("%s\n", cur_post->contents);
            cur_post = cur_post->next;
        }
    }
    printf("------------------------------------------\n");
    return 0;
}
