Leitura / gravação de arquivo de texto na programação C

Preciso gravar algo em um arquivo txt, ler o conteúdo e imprimi-lo na tela. Abaixo está o código que escrevi, ele pode criar e gravar o conteúdo no arquivo corretamente, mas não pode ler o arquivo e imprimir corretament

#include<stdio.h>
#include<stdlib.h>
main()
{
    char filename[20]={"c:\\test.txt"};
    FILE *inFile;
    char c;
    inFile=fopen(filename,"w+");

    if(inFile==NULL)
    {
        printf("An error occoured!");
        exit(1);
    }
    while((c=getchar())!=EOF)
        fputc(c,inFile);
    fputc('\0',inFile);

    while((c=fgetc(inFile))!=EOF)
        putchar(c);
}

Alguém me diria o que há de errado com este programa, especialmente nas duas últimas linhas. Desde já, obrigado

questionAnswers(3)

yourAnswerToTheQuestion