1

I am just learning C

I have written the following:

void main(void)
{
    unsigned int  curr_dat = 0; // The current dat file to use
    unsigned char ch = 0;       // Key entered at keyboard
    unsigned char lastkey = 0;  // Last key entered (movement command)
    FILE *fp;
}

However i am getting these errors when trying to compile:
error C2065: 'FILE' : undeclared identifier
error C2065: 'fp' : undeclared identifier
warning C4552: '*' : operator has no effect; expected operator with side-effect

I'm unsure why as i believe FILE is a valid identifier in C

I am using Developer Command Prompt for VS2012 to compile

DNKROZ
  • 2,634
  • 4
  • 25
  • 43

2 Answers2

6

FILE is declared in stdio.h. Add #include <stdio.h> to the top of your file.

Fred Larson
  • 60,987
  • 18
  • 112
  • 174
3

FILE is type from stdio.h. To use it you have to add:

#include <stdio.h>

at the top of your file. The result can be:

#include <stdio.h>

void main(void) {
    unsigned int  curr_dat = 0; // The current dat file to use
    unsigned char ch = 0;       // Key entered at keyboard
    unsigned char lastkey = 0;  // Last key entered (movement command)
    FILE *fp;
}
xenteros
  • 15,586
  • 12
  • 56
  • 91