utils.c

来自「基于组件方式开发操作系统的OSKIT源代码」· C语言 代码 · 共 72 行

C
72
字号
#include <stdio.h>#include <stdarg.h>#define NeedVarargsPrototypes 1#if NeedVarargsPrototypesvoidVErrorF(f, args)    char *f;    va_list args;{    vfprintf(stderr, f, args);}#endif/*VARARGS1*/voidErrorF(#if NeedVarargsPrototypes    char * f, ...)#else f, s0, s1, s2, s3, s4, s5, s6, s7, s8, s9) /* limit of ten args */    char *f;    char *s0, *s1, *s2, *s3, *s4, *s5, *s6, *s7, *s8, *s9;#endif{#if NeedVarargsPrototypes    va_list args;    va_start(args, f);    VErrorF(f, args);    va_end(args);#else    fprintf( stderr, f, s0, s1, s2, s3, s4, s5, s6, s7, s8, s9);#endif	}/*VARARGS1*/voidFatalError(#if NeedVarargsPrototypes    char *f, ...)#elsef, s0, s1, s2, s3, s4, s5, s6, s7, s8, s9) /* limit of ten args */    char *f;    char *s0, *s1, *s2, *s3, *s4, *s5, *s6, *s7, *s8, *s9;#endif{#if NeedVarargsPrototypes    va_list args;#endif    ErrorF("\nFatal server error:\n");#if NeedVarargsPrototypes    va_start(args, f);    VErrorF(f, args);    va_end(args);#else    ErrorF(f, s0, s1, s2, s3, s4, s5, s6, s7, s8, s9);#endif    ErrorF("\n");#ifdef DDXOSFATALERROR    OsVendorFatalError();#endif#ifndef OSKIT    AbortServer();#else    exit();#endif/*NOTREACHED*/}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?