C perror() function

C library function - perror()

The perror() function is used to print an error message to stderr based on the error state stored in errno. The string pointed to by string, followed by a colon and a space, is printed to the standard error stream if string is not NULL.


void perror(const char *str)


Name Description Required /Optional
str Contains a custom message. Required

Return value

  • This function does not return any value.

Example: The following example shows the usage of perror() function.

#include <stdio.h>
#include <stdlib.h>
int main(void)
   FILE *fh;
   if ((fh = fopen("test1.txt","r")) == NULL)
      perror("Can not open the said file.");
   return 0;


Can not open the said file.: No such file or directory

C Programming Code Editor:

Previous C Programming: C puts()

Share this Tutorial / Exercise on : Facebook and Twitter

C Programming: Tips of the Day

What's an object file in C?

An object file is the real output from the compilation phase. It's mostly machine code, but has info that allows a linker to see what symbols are in it as well as symbols it requires in order to work. (For reference, "symbols" are basically names of global objects, functions, etc.)

A linker takes all these object files and combines them to form one executable (assuming that it can, i.e.: that there aren't any duplicate or undefined symbols). A lot of compilers will do this for you (read: they run the linker on their own) if you don't tell them to "just compile" using command-line options. (-c is a common "just compile; don't link" option.)

Ref : https://bit.ly/3CbzF8M