perror.c
来自「Axis 221 camera embedded programing inte」· C语言 代码 · 共 37 行
C
37 行
/* Copyright (C) 2004 Manuel Novoa III <mjn3@codepoet.org> * * GNU Library General Public License (LGPL) version 2 or later. * * Dedicated to Toni. See uClibc/DEDICATION.mjn3 for details. */#include "_stdio.h"#ifdef __UCLIBC_MJN3_ONLY__#warning CONSIDER: Increase buffer size for error message (non-%m case)?#endifvoid perror(register const char *s){ /* If the program is calling perror, it's a safe bet that printf and * friends are used as well. It is also possible that the calling * program could buffer stderr, or reassign it. */ register const char *sep; sep = ": "; if (!(s && *s)) { /* Caller did not supply a prefix message */ s = (sep += 2); /* or passed an empty string. */ }#ifdef __UCLIBC_HAS_PRINTF_M_SPEC__ fprintf(stderr, "%s%s%m\n", s, sep); /* Use the gnu %m feature. */#else { char buf[64]; fprintf(stderr, "%s%s%s\n", s, sep, _glibc_strerror_r(errno, buf, sizeof(buf))); }#endif}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?