size_t __freadahead(FILE* fp) { // Normally _r is the amount of input already available. // When there's ungetc() data, _r counts that and _ur is the previous _r. return fp->_r + (HASUB(fp) ? fp->_ur : 0);
}
void _flushlbf() { // If we flush all streams, we know we've flushed all the line-buffered streams.
fflush(nullptr);
}
int __fsetlocking(FILE* fp, int type) { int old_state = _EXT(fp)->_caller_handles_locking ? FSETLOCKING_BYCALLER : FSETLOCKING_INTERNAL; if (type == FSETLOCKING_QUERY) { return old_state;
}
if (type != FSETLOCKING_INTERNAL && type != FSETLOCKING_BYCALLER) { // The API doesn't let us report an error, so blow up.
async_safe_fatal("Bad type (%d) passed to __fsetlocking", type);
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.