Operating systems, development tools, and professional services
for connected embedded systems
for connected embedded systems
![]() |
![]() |
![]() |
![]() |
warn(), warnx()
Formatted error message
Synopsis:
#include <err.h> void warn( const char* fmt, ...); void warnx( const char* fmt, ...);
Arguments:
- fmt
- NULL, or a printf()-style string used to format the message.
- Additional arguments
- As required by the format string.
Library:
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
Description:
The err() and warn() family of functions display a formatted error message on stderr. For a comparison of the members of this family, see err().
The warn() function produces a message that consists of:
- the last component of the program name, followed by a colon and a space
- the formatted message, followed by a colon and a space, if the fmt argument isn't NULL
- the string associated with the current value of errno
- a newline character.
The warnx() function produces a similar message, except that it doesn't include the string associated with errno. The message consists of:
- the last component of the program name, followed by a colon and a space
- the formatted message, if the fmt argument isn't NULL
- a newline character.
Examples:
Warn of an error:
if ((fd = open(raw_device, O_RDONLY, 0)) == -1)
warnx("%s: %s: trying the block device",
raw_device, strerror(errno));
if ((fd = open(block_device, O_RDONLY, 0)) == -1)
warn("%s", block_device);
Classification:
| Safety: | |
|---|---|
| Cancellation point | Yes |
| Interrupt handler | No |
| Signal handler | Yes |
| Thread | Yes |
See also:
err(), errx(), stderr, strerror(), verr(), verrx(), vwarn(), vwarnx()
![]() |
![]() |
![]() |
![]() |

![[Previous]](../prev.gif)
![[Contents]](../contents.gif)
![[Index]](../keyword_index.gif)
![[Next]](../next.gif)