亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? fopen.c

?? minix操作系統(tǒng)最新版本(3.1.1)的源代碼
?? C
字號:
/* * fopen.c - open a stream *//* $Header: /cvsup/minix/src/lib/stdio/fopen.c,v 1.3 2005/09/05 17:17:58 beng Exp $ */#if	defined(_POSIX_SOURCE)#include	<sys/types.h>#endif#include	<stdio.h>#include	<stdlib.h>#include	"loc_incl.h"#include	<sys/stat.h>#define	PMODE		0666/* The next 3 defines are true in all UNIX systems known to me. */#define	O_RDONLY	0#define	O_WRONLY	1#define	O_RDWR		2/* Since the O_CREAT flag is not available on all systems, we can't get it * from the standard library. Furthermore, even if we know that <fcntl.h> * contains such a flag, it's not sure whether it can be used, since we * might be cross-compiling for another system, which may use an entirely * different value for O_CREAT (or not support such a mode). The safest * thing is to just use the Version 7 semantics for open, and use creat() * whenever necessary. * * Another problem is O_APPEND, for which the same holds. When "a" * open-mode is used, an lseek() to the end is done before every write() * system-call. * * The O_CREAT, O_TRUNC and O_APPEND given here, are only for convenience. * They are not passed to open(), so the values don't have to match a value * from the real world. It is enough when they are unique. */#define	O_CREAT		0x010#define	O_TRUNC		0x020#define	O_APPEND	0x040int _open(const char *path, int flags);int _creat(const char *path, _mnx_Mode_t mode);int _close(int d);FILE *fopen(const char *name, const char *mode){	register int i;	int rwmode = 0, rwflags = 0;	FILE *stream;	struct stat st;	int fd, flags = 0;	for (i = 0; __iotab[i] != 0 ; i++) 		if ( i >= FOPEN_MAX-1 )			return (FILE *)NULL;	switch(*mode++) {	case 'r':		flags |= _IOREAD | _IOREADING;			rwmode = O_RDONLY;		break;	case 'w':		flags |= _IOWRITE | _IOWRITING;		rwmode = O_WRONLY;		rwflags = O_CREAT | O_TRUNC;		break;	case 'a': 		flags |= _IOWRITE | _IOWRITING | _IOAPPEND;		rwmode = O_WRONLY;		rwflags |= O_APPEND | O_CREAT;		break;         	default:		return (FILE *)NULL;	}	while (*mode) {		switch(*mode++) {		case 'b':			continue;		case '+':			rwmode = O_RDWR;			flags |= _IOREAD | _IOWRITE;			continue;		/* The sequence may be followed by additional characters */		default:			break;		}		break;	}	/* Perform a creat() when the file should be truncated or when	 * the file is opened for writing and the open() failed.	 */	if ((rwflags & O_TRUNC)	    || (((fd = _open(name, rwmode)) < 0)		    && (rwflags & O_CREAT))) {		if (((fd = _creat(name, PMODE)) > 0) && flags  | _IOREAD) {			(void) _close(fd);			fd = _open(name, rwmode);		}				}	if (fd < 0) return (FILE *)NULL;	if ( fstat( fd, &st ) < 0 ) {		_close(fd);		return (FILE *)NULL;	}		if ( st.st_mode & S_IFIFO ) flags |= _IOFIFO;		if (( stream = (FILE *) malloc(sizeof(FILE))) == NULL ) {		_close(fd);		return (FILE *)NULL;	}	if ((flags & (_IOREAD | _IOWRITE))  == (_IOREAD | _IOWRITE))		flags &= ~(_IOREADING | _IOWRITING);	stream->_count = 0;	stream->_fd = fd;	stream->_flags = flags;	stream->_buf = NULL;	__iotab[i] = stream;	return stream;}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
裸体健美xxxx欧美裸体表演| 欧美三级在线看| 91国偷自产一区二区开放时间| 欧美人xxxx| 中文字幕在线播放不卡一区| 亚洲午夜电影在线| 成人性生交大片免费看在线播放| 欧美日韩视频不卡| 综合久久一区二区三区| 狠狠色丁香久久婷婷综合丁香| 在线观看亚洲专区| 国产精品视频免费| 国产精品99久久久久久久女警 | 国模娜娜一区二区三区| 色999日韩国产欧美一区二区| 精品国精品国产| 天天色图综合网| 色欧美乱欧美15图片| 国产精品久久久一本精品 | 亚洲视频你懂的| 国产91精品久久久久久久网曝门| 91精品国产综合久久蜜臀 | 日韩一区中文字幕| 成人网在线播放| 国产欧美视频一区二区三区| 青椒成人免费视频| 欧美一区二区福利在线| 婷婷综合另类小说色区| 欧美午夜电影在线播放| 亚洲精品免费播放| 色成年激情久久综合| 亚洲欧美aⅴ...| av不卡免费在线观看| 国产精品无遮挡| 成人看片黄a免费看在线| 欧美国产日韩亚洲一区| 国产盗摄一区二区| 国产精品久久久久精k8| 粉嫩绯色av一区二区在线观看| 久久久三级国产网站| 国产成人亚洲精品狼色在线| 欧美激情一区二区在线| 成人在线一区二区三区| 日韩毛片高清在线播放| 色综合久久久久综合体| 亚洲无线码一区二区三区| 欧美色手机在线观看| 亚洲大片免费看| 欧美成人欧美edvon| 国内精品国产三级国产a久久| 久久久久久毛片| 成人激情视频网站| 亚洲在线中文字幕| 欧美一二三在线| 国产精品羞羞答答xxdd | 国产日韩精品一区二区三区在线| 国产盗摄女厕一区二区三区| 综合欧美亚洲日本| 91麻豆精品国产91久久久使用方法 | 亚洲福利视频导航| 精品久久人人做人人爰| 成人av网站在线观看免费| 一区二区三区美女视频| 制服丝袜日韩国产| 国产黄人亚洲片| 亚洲夂夂婷婷色拍ww47| 日韩久久精品一区| 95精品视频在线| 男人操女人的视频在线观看欧美 | 国产精品视频九色porn| 欧美日韩综合一区| 国产在线视频一区二区三区| 亚洲精品综合在线| 精品久久久久av影院| av亚洲精华国产精华精华| 日韩—二三区免费观看av| 久久精品人人做人人爽人人| 在线精品视频一区二区| 国产成人精品亚洲午夜麻豆| 亚洲高清在线视频| 日本一区二区三区四区| 7777精品伊人久久久大香线蕉经典版下载| 久久精品国产99国产| 亚洲综合色婷婷| 国产精品欧美久久久久无广告| 欧美日韩国产另类不卡| 成人三级在线视频| 美腿丝袜亚洲三区| 亚洲综合在线观看视频| 欧美国产一区在线| 欧美mv日韩mv国产网站app| 欧美亚洲综合网| 99国产精品久久久久久久久久 | 欧美精品三级日韩久久| www.视频一区| 国产一区二区在线视频| 亚洲一二三四在线观看| 亚洲特黄一级片| 国产亚洲精品资源在线26u| 日韩视频一区二区三区在线播放| 一本大道综合伊人精品热热| 国产成人免费视频精品含羞草妖精| 日本女优在线视频一区二区| 亚洲一区二区五区| 亚洲欧美韩国综合色| 国产精品国模大尺度视频| 欧美国产欧美亚州国产日韩mv天天看完整 | 亚洲18色成人| 亚洲欧美电影院| 自拍偷拍亚洲综合| 中文字幕 久热精品 视频在线| 精品国产91洋老外米糕| 日韩无一区二区| 91精品国产aⅴ一区二区| 欧美精品丝袜久久久中文字幕| 欧美在线一区二区| 欧美在线free| 欧美日韩在线播| 欧洲国内综合视频| 欧美影院午夜播放| 欧美日韩mp4| 日韩午夜在线观看视频| 欧美成人福利视频| 久久久国产精品午夜一区ai换脸| 精品乱人伦小说| 精品不卡在线视频| 国产欧美一区二区精品秋霞影院| 亚洲国产精品99久久久久久久久 | 午夜精品福利久久久| 天堂久久久久va久久久久| 日韩国产在线一| 麻豆91精品视频| 成人视屏免费看| 色女孩综合影院| 欧美日韩一区视频| 日韩欧美一区电影| 亚洲国产精品av| 亚洲福利视频一区二区| 另类小说欧美激情| 成人午夜短视频| 欧美优质美女网站| 欧美成人aa大片| 自拍偷拍国产精品| 天天影视色香欲综合网老头| 麻豆91精品视频| 99在线视频精品| 91精品国产综合久久精品app| 久久亚区不卡日本| 亚洲少妇最新在线视频| 日产精品久久久久久久性色| 国产精品99久久久久久宅男| 欧美做爰猛烈大尺度电影无法无天| 在线播放国产精品二区一二区四区 | 国产精品色婷婷久久58| 亚洲国产精品人人做人人爽| 国产一区在线视频| 91九色最新地址| 亚洲精品一区二区三区99| 亚洲精品视频一区二区| 韩国理伦片一区二区三区在线播放| 99精品国产91久久久久久| 欧美成人欧美edvon| 亚洲黄色av一区| 国产宾馆实践打屁股91| 91.com视频| 亚洲图片你懂的| 国产一区二区三区高清播放| 在线中文字幕不卡| 欧美极品少妇xxxxⅹ高跟鞋| 日本美女视频一区二区| 99精品国产一区二区三区不卡| 日韩欧美国产一区二区在线播放 | 日本亚洲三级在线| 99精品国产热久久91蜜凸| 26uuu欧美| 日韩av网站在线观看| 欧美综合一区二区| 亚洲欧洲一区二区三区| 国产精品中文字幕一区二区三区| 欧美日韩中文国产| 亚洲三级在线看| 国产在线一区二区| 欧美mv日韩mv国产网站app| 日韩精品电影一区亚洲| 欧美伊人久久久久久久久影院| 国产精品久久久久久久久图文区| 另类小说一区二区三区| 欧美一区二区视频在线观看2022| 一区二区三区精品视频在线| 成人sese在线| 中文字幕av一区二区三区| 国产老肥熟一区二区三区| 日韩精品资源二区在线| 日本大胆欧美人术艺术动态| 欧美在线播放高清精品| 亚洲综合成人在线视频| 色94色欧美sute亚洲线路一久| 国产精品久久久久一区| 99热在这里有精品免费| 国产精品卡一卡二卡三|