sprintf.c
来自「在x86平台上运行不可信任代码的sandbox。」· C语言 代码 · 共 50 行
C
50 行
#include <stdio.h>#include <errno.h>#include "ioprivate.h"struct sprintbuf { char *buf;};static intsprintputch(int ch, struct sprintbuf *b){ *b->buf++ = ch; return 0;}intvsprintf(char *buf, const char *fmt, va_list ap){ struct sprintbuf b = {buf}; if (buf == NULL) { errno = EINVAL; return -1; } // print the string to the buffer int cnt = vprintfmt((void*)sprintputch, &b, fmt, ap); // null terminate the buffer *b.buf = '\0'; return cnt;}intsprintf(char *buf, const char *fmt, ...){ va_list ap; int rc; va_start(ap, fmt); rc = vsprintf(buf, fmt, ap); va_end(ap); return rc;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?