fwrite.c
来自「Axis 221 camera embedded programing inte」· C语言 代码 · 共 60 行
C
60 行
/* 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 __DO_UNLOCKEDweak_alias(__fwrite_unlocked,fwrite_unlocked);#ifndef __UCLIBC_HAS_THREADS__weak_alias(__fwrite_unlocked,fwrite);#endifsize_t __fwrite_unlocked(const void * __restrict ptr, size_t size, size_t nmemb, register FILE * __restrict stream){ __STDIO_STREAM_VALIDATE(stream); /* Note: If nmbem * size > SIZE_MAX then there is an application * bug since no array can be larger than SIZE_MAX in size. */ if ((__STDIO_STREAM_IS_NARROW_WRITING(stream) || !__STDIO_STREAM_TRANS_TO_WRITE(stream, __FLAG_NARROW)) && size && nmemb ) { if (nmemb <= (SIZE_MAX / size)) { return __stdio_fwrite((const unsigned char *) ptr, size*nmemb, stream) / size; } __STDIO_STREAM_SET_ERROR(stream); __set_errno(EINVAL); } return 0;}#elif defined __UCLIBC_HAS_THREADS__size_t fwrite(const void * __restrict ptr, size_t size, size_t nmemb, register FILE * __restrict stream){ size_t retval; __STDIO_AUTO_THREADLOCK_VAR; __STDIO_AUTO_THREADLOCK(stream); retval = __fwrite_unlocked(ptr, size, nmemb, stream); __STDIO_AUTO_THREADUNLOCK(stream); return retval;}#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?