Ejemplo n.º 1
0
/*
 * Print to console using printf()-style formatting.
 * Calls into Format_Output in common library.
 */
void Print(const char *fmt, ...)
{
    va_list args;

    bool iflag = Begin_Int_Atomic();

    va_start(args, fmt);
    Format_Output(&s_outputSink, fmt, args);
    va_end(args);

    End_Int_Atomic(iflag);
}
Ejemplo n.º 2
0
int snprintf(char *s, size_t size, const char *fmt, ...) {
    struct String_Output_Sink sink;
    int rc;
    va_list args;

    /* Prepare string output sink */
    sink.o.Emit = &String_Emit;
    sink.o.Finish = &String_Finish;
    sink.s = s;
    sink.n = 0;
    sink.size = size;

    /* Format the string */
    va_start(args, fmt);
    rc = Format_Output(&sink.o, fmt, args);
    va_end(args);

    return rc;
}