- struct _PDCLIB_status_t status;
- status.base = 0;
- status.flags = 0;
- /* In _PDCLIB_print, status.n holds the maximum number of characters to be
- written. As we don't need that for the scanf() functions, we (ab)use
- this field to hold the number of matching conversion specifiers.
- */
- status.n = 0;
- status.i = 0;
- status.this = 0;
- /* In _PDCLIB_print, status.s is the string *printed to*. In the scanf()
- functions, we (ab)use this field to hold the string *scanned from*.
- */
- status.s = (char *)s;
- status.width = 0;
- status.prec = 0;
- status.stream = NULL;
+ /* base, flag, n, i, current, s, width, prec, stream, arg */
+ struct _PDCLIB_status_t status = { 0, 0, 0, 0, 0, (char *)s, 0, 0, NULL, NULL };