Go to the source code of this file.
Defines | |
#define | WCSPRINTF_PTR(str1, ptr, str2) |
Print addresses in a consistent way. | |
Functions | |
int | wcsprintf_set (FILE *wcsout) |
Set output disposition for wcsprintf(). | |
int | wcsprintf (const char *format,...) |
Print function used by WCSLIB diagnostic routines. | |
const char * | wcsprintf_buf (void) |
Get the address of the internal string buffer. |
#define WCSPRINTF_PTR | ( | str1, | |||
ptr, | |||||
str2 | ) |
Value:
if (ptr) { \ wcsprintf("%s%#lx%s", (str1), (unsigned long)(ptr), (str2)); \ } else { \ wcsprintf("%s0x0%s", (str1), (str2)); \ }
On some systems the "p" format descriptor renders a NULL pointer as the string "0x0". On others, however, it produces "0" or even "(nil)". On some systems a non-zero address is prefixed with "0x", on others, not.
The WCSPRINTF_PTR() macro ensures that a NULL pointer is always rendered as "0x0" and that non-zero addresses are prefixed with "0x" thus providing consistency, for example, for comparing the output of test programs.
int wcsprintf_set | ( | FILE * | wcsout | ) |
wcsprintf_set() sets the output disposition for wcsprintf() which is used by the celprt(), linprt(), prjprt(), spcprt(), tabprt(), wcsprt(), and wcserr_prt() routines.
Output goes to stdout by default if wcsprintf_set() has not been called.
[in] | wcsout | Pointer to an output stream that has been opened for writing, e.g. by the fopen() stdio library function, or one of the predefined stdio output streams - stdout and stderr. If zero (NULL), output is written to an internally-allocated string buffer, the address of which may be obtained by wcsprintf_buf(). |
int wcsprintf | ( | const char * | format, | |
... | ||||
) |
wcsprintf() is used by the celprt(), linprt(), prjprt(), spcprt(), tabprt(), wcsprt(), and wcserr_prt() routines. Its output may be redirected to a file or string buffer via wcsprintf_set(). By default output goes to stdout.
[in] | format | Format string, passed to one of the printf(3) family of stdio library functions. |
[in] | ... | Argument list matching format, as per printf(3). |
wcsprintf_buf | ( | void | ) |
wcsprintf_buf() returns the address of the internal string buffer created when wcsprintf_set() is invoked with its FILE* argument set to zero.