getc()

QNX SDP8.0C Library ReferenceAPIDeveloper

Get the next character from a file

Synopsis:

#include <stdio.h>

int getc( FILE* fp );

Arguments:

fp
The stream you want to get the character from.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The getc() macro gets the next character from the stream designated by fp. The character is returned as an int value.

Returns:

  • If successful, getc() returns the next character from fp, cast as (int)(unsigned char).
  • If the end-of-file indicator for the stream is set or the end of the file has been reached, getc() sets the end-of-file indicator and returns EOF.
  • If an error occurred, getc() sets the error indicator for the stream, sets errno, and returns EOF.
Note:
Use feof() or ferror() to distinguish an end-of-file condition from an error.

Examples:

#include <stdio.h>
#include <stdlib.h>

int main( void )
{
    FILE* fp;
    int c;

    fp = fopen( "file", "r" );
    if( fp != NULL ) {
        while( (c = getc( fp )) != EOF ) {
            putchar(c);
        }

        fclose( fp );
        
        return EXIT_SUCCESS;
    }
    
    return EXIT_FAILURE;
}

Classification:

ANSI, POSIX 1003.1

Safety:
Cancellation pointYes
Signal handlerNo
ThreadYes

Caveats:

getc() is a macro.

Page updated: