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

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

?? fdopen.c

?? C標(biāo)準(zhǔn)庫源代碼,能提高對C的理解,不錯的哦
?? C
字號:
/***
*fdopen.c - open a file descriptor as stream
*
*       Copyright (c) 1985-1997, Microsoft Corporation. All rights reserved.
*
*Purpose:
*       defines _fdopen() - opens a file descriptor as a stream, thus allowing
*       buffering, etc.
*
*******************************************************************************/

#include <cruntime.h>
#include <msdos.h>
#include <stdio.h>
#include <file2.h>
#include <dbgint.h>
#include <internal.h>
#include <mtdll.h>
#include <tchar.h>

/***
*FILE *_fdopen(filedes, mode) - open a file descriptor as a stream
*
*Purpose:
*       associates a stream with a file handle, thus allowing buffering, etc.
*       The mode must be specified and must be compatible with the mode
*       the file was opened with in the low level open.
*
*Entry:
*       int filedes - handle referring to open file
*       _TSCHAR *mode - file mode to use ("r", "w", "a", etc.)
*
*Exit:
*       returns stream pointer and sets FILE struct fields if successful
*       returns NULL if fails
*
*Exceptions:
*
*******************************************************************************/

FILE * __cdecl _tfdopen (
        int filedes,
        REG2 const _TSCHAR *mode
        )
{
        REG1 FILE *stream;
        int whileflag, tbflag, cnflag;

        _ASSERTE(mode != NULL);

#if defined (_WIN32)

        _ASSERTE((unsigned)filedes < (unsigned)_nhandle);
        _ASSERTE(_osfile(filedes) & FOPEN);

        if ( ((unsigned)filedes >= (unsigned)_nhandle) ||
             !(_osfile(filedes) & FOPEN) )
            return(NULL);

#else  /* defined (_WIN32) */


#if defined (_M_MPPC) || defined (_M_M68K)

        _ASSERTE((unsigned)filedes < (unsigned)_nfile);
        _ASSERTE(_osfile[filedes] & FOPEN);

        if ( ((unsigned)filedes >= (unsigned)_nfile) ||
             !(_osfile[filedes] & FOPEN) )
            return(NULL);

#endif  /* defined (_M_MPPC) || defined (_M_M68K) */


#endif  /* defined (_WIN32) */


        /* Find a free stream; stream is returned 'locked'. */

        if ((stream = _getstream()) == NULL)
            return(NULL);

        /* First character must be 'r', 'w', or 'a'. */

        switch (*mode) {
            case _T('r'):
                stream->_flag = _IOREAD;
                break;
            case _T('w'):
            case _T('a'):
                stream->_flag = _IOWRT;
                break;
            default:
                stream = NULL;  /* error */
                goto done;
                break;
        }

        /* There can be up to three more optional characters:
           (1) A single '+' character,
           (2) One of 'b' and 't' and
           (3) One of 'c' and 'n'.

           Note that currently, the 't' and 'b' flags are syntax checked
           but ignored.  'c' and 'n', however, are correctly supported.
        */

        whileflag=1;
        tbflag=cnflag=0;
        stream->_flag |= _commode;

        while(*++mode && whileflag)
            switch(*mode) {

                case _T('+'):
                    if (stream->_flag & _IORW)
                        whileflag=0;
                    else {
                        stream->_flag |= _IORW;
                        stream->_flag &= ~(_IOREAD | _IOWRT);
                    }
                    break;

                case _T('b'):
                case _T('t'):
                    if (tbflag)
                        whileflag=0;
                    else
                        tbflag=1;
                    break;

                case _T('c'):
                    if (cnflag)
                        whileflag = 0;
                    else {
                        cnflag = 1;
                        stream->_flag |= _IOCOMMIT;
                    }
                    break;

                case _T('n'):
                    if (cnflag)
                        whileflag = 0;
                    else {
                        cnflag = 1;
                        stream->_flag &= ~_IOCOMMIT;
                    }
                    break;

                default:
                    whileflag=0;
                    break;
            }

#ifndef CRTDLL
        _cflush++;  /* force library pre-termination procedure */
#endif  /* CRTDLL */

        stream->_file = filedes;

#if defined (_M_MPPC) || defined (_M_M68K)
        if ( ( ( _osfile[filedes] & FRDONLY ) && (stream->_flag & (_IORW | _IOWRT)) ) ||
            ( ( _osfile[filedes] & FWRONLY ) && (stream->_flag & (_IORW | _IOREAD)) ) )
        {
            stream->_flag = 0;   /* stream not used */
            return(NULL);
        }
#endif  /* defined (_M_MPPC) || defined (_M_M68K) */

/* Common return */

done:
        _unlock_str(stream);
        return(stream);
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产一区二区三区香蕉| 欧美国产一区二区| 欧美国产乱子伦 | 国内精品第一页| 欧美三级在线播放| 自拍偷拍欧美激情| 国产乱码字幕精品高清av| 欧美日韩国产123区| 亚洲精品中文字幕在线观看| 久久99热这里只有精品| 91精品在线免费| 一区二区不卡在线播放| 99久久综合99久久综合网站| 精品国内片67194| 日本成人中文字幕在线视频| 色婷婷av一区二区| 中文字幕一区三区| 成人性色生活片免费看爆迷你毛片| 91精品福利在线一区二区三区| 亚洲制服丝袜av| 日本精品视频一区二区| 国产精品美女一区二区三区 | 精品久久久久久无| 午夜精品久久久久久久久久| 在线区一区二视频| 一二三区精品福利视频| 色欧美88888久久久久久影院| 中文字幕高清不卡| 不卡的电影网站| 亚洲欧洲精品一区二区三区| 波多野结衣中文一区| 国产精品理伦片| 一本色道久久加勒比精品| 亚洲欧美日韩国产综合在线| 99视频精品免费视频| 亚洲欧洲成人精品av97| 日本道色综合久久| 亚洲午夜在线电影| 欧美剧在线免费观看网站| 日韩精品亚洲专区| 久久婷婷一区二区三区| 国产在线播放一区三区四| 精品粉嫩超白一线天av| 丁香激情综合国产| 一区二区三区日韩欧美精品| 欧美调教femdomvk| 成人一级黄色片| 国产精品毛片久久久久久久| 色综合一区二区| 亚洲国产一区二区三区| 欧美一区二区三区在线观看视频| 蜜桃精品在线观看| 国产精品久久久久一区二区三区| 成+人+亚洲+综合天堂| 亚洲激情在线激情| 欧美sm极限捆绑bd| av中文一区二区三区| 艳妇臀荡乳欲伦亚洲一区| 在线综合亚洲欧美在线视频 | 亚洲午夜在线电影| 欧美电视剧免费全集观看| 成人久久视频在线观看| 亚洲第一激情av| 精品国产一区二区在线观看| a在线播放不卡| 奇米精品一区二区三区在线观看 | 久久国产精品99久久久久久老狼| 国产日韩精品一区二区三区 | 日韩电影在线免费观看| 国产清纯美女被跳蛋高潮一区二区久久w | 国产91精品一区二区麻豆网站| 最新热久久免费视频| 日韩欧美中文一区| 色综合婷婷久久| 精品亚洲国内自在自线福利| 亚洲视频一区在线观看| 欧美xxxx老人做受| 在线视频你懂得一区二区三区| 美国一区二区三区在线播放| 欧美韩国日本不卡| 日韩欧美国产wwwww| 一本色道久久综合狠狠躁的推荐| 激情国产一区二区| 午夜精品123| 中文字幕一区二区三区在线播放 | 欧美日产在线观看| 成人va在线观看| 国产一区二区三区| 日韩中文字幕一区二区三区| 亚洲欧洲99久久| 精品乱码亚洲一区二区不卡| 欧美老肥妇做.爰bbww| 色婷婷香蕉在线一区二区| 国产精品一区二区免费不卡| 日韩激情一区二区| 五月婷婷另类国产| 一区二区三区波多野结衣在线观看| 久久男人中文字幕资源站| 日韩午夜精品视频| 欧美高清性hdvideosex| 欧美亚洲日本国产| 欧美日韩一区二区三区在线 | 一区二区国产视频| 亚洲欧洲一区二区三区| 国产免费观看久久| 国产精品视频麻豆| 国产精品久久久久婷婷二区次| 久久久久久久久蜜桃| 久久久精品免费免费| 国产日韩欧美精品综合| 欧美国产在线观看| 亚洲日本欧美天堂| 日韩毛片高清在线播放| 一区二区成人在线视频| 亚洲午夜视频在线| 天堂在线一区二区| 麻豆精品一二三| 精品一区二区三区免费| 国产在线观看一区二区| 国产成人欧美日韩在线电影| 风间由美中文字幕在线看视频国产欧美| 国产乱码精品一区二区三区五月婷 | 精品少妇一区二区| 久久亚洲综合av| 中文字幕高清不卡| 亚洲欧美一区二区三区久本道91| 亚洲欧美成人一区二区三区| 一区二区三区小说| 石原莉奈在线亚洲三区| 蜜桃免费网站一区二区三区| 国产成人综合网| 91丨porny丨户外露出| 欧美视频一区二区三区四区| 3d动漫精品啪啪1区2区免费| 久久亚洲一区二区三区四区| 国产精品天天看| 亚洲激情av在线| 青椒成人免费视频| 成人黄色在线网站| 欧美精品第1页| 久久精品亚洲精品国产欧美kt∨| 国产精品沙发午睡系列990531| 亚洲视频免费观看| 秋霞午夜鲁丝一区二区老狼| 国产福利一区二区| 欧美日韩视频在线观看一区二区三区| 日韩三级在线观看| 最近日韩中文字幕| 美女国产一区二区三区| 不卡一区二区在线| 在线成人小视频| 中文字幕一区日韩精品欧美| 丝袜诱惑制服诱惑色一区在线观看 | 国产精品中文字幕日韩精品| 91蜜桃网址入口| 欧美成人免费网站| 伊人色综合久久天天人手人婷| 麻豆精品一二三| 欧美午夜免费电影| 中文字幕av一区二区三区免费看| 午夜久久久久久久久久一区二区| 国产一区二区视频在线播放| 在线视频中文字幕一区二区| 久久久亚洲精华液精华液精华液| 依依成人综合视频| 成人免费视频一区二区| 精品免费一区二区三区| 亚洲成av人影院| 91美女蜜桃在线| 亚洲国产精华液网站w| 男人的天堂亚洲一区| 色综合中文字幕国产 | 欧美一区二区三区免费| 一区在线中文字幕| 国产精品亚洲综合一区在线观看| 精品视频123区在线观看| 国产精品久久午夜夜伦鲁鲁| 黄色小说综合网站| 日韩一区二区电影在线| 亚洲国产日产av| 91免费看`日韩一区二区| 国产亚洲美州欧州综合国| 日本不卡视频在线| 欧美日韩免费观看一区二区三区 | 久久精品国产澳门| 欧美日韩三级一区| 亚洲一区在线观看免费观看电影高清| 99视频热这里只有精品免费| 中文在线一区二区| 成人精品小蝌蚪| 国产精品毛片久久久久久| 国产电影一区在线| 欧美国产视频在线| 成人aa视频在线观看| 国产精品视频一区二区三区不卡| 国产精品资源网| 国产精品美女久久久久久久网站| 国产精品1区二区.| 国产色综合久久| av爱爱亚洲一区|