Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Home » Tip Bank » C++
Language: C++
Expertise: Intermediate
Apr 22, 2002



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Obtaining a Verbal Description of errno

System calls and Standard Library functions assign a zero value to the global variable errno to indicate success. In case of an error, they assign negative values to errno. On each invocation of a system call or library function, the environment overwrites the previous errno value. errno and its associated functions are declared in the standard header file . You can obtain a textual description of the last errno code by calling perror() which has the following prototype:
void perror(const char * user_msg);

perror() takes a string as an argument to which it appends a colon and a verbal description of the current errno value. The resulting string is printed on stderr (typically, the monitor). The common approach is to pass the filename of the program as an argument:
if (open("db_file.dat", O_RDONLY)<0)
  perror (__FILE__); // pass current filename

The output may look as follows:
 database.c: No such file or directory

Remember not to append a newline character to the string you pass an argument because perror() automatically appends a newline after the error description.
Danny Kalev
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date