zoukankan      html  css  js  c++  java
  • setvbuf

    函数名: setvbuf

    用 法: int setvbuf(FILE *stream, char *buf, int type, unsigned size);
    type : 期望缓冲区的类型:
    _IOFBF(满缓冲):当缓冲区为空时,从流读入数据。或者当缓冲区满时,向流写入数 据。
    _IOLBF(行缓冲):每次从流中读入一行数据或向流中写入一行数据。
    _IONBF(无缓冲):直接从流中读入数据或直接向流中写入数据,而没有缓冲区。
    size : 缓冲区内字节的数量。
    注意:This function should be called once the file associated with the stream has already been opened but before any input or output operation has taken place.
    意思是这个函数应该在打开流后,立即调用,在任何对该流做输入输出前

    程序例编辑

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    #include <stdio.h>
     
    int main()
    {
        FILE *input, *output;
        char bufr[512];
        input = fopen("file.in""r+b");
        output = fopen("file.out""w");
        /* set up input stream for minimal disk access,
        using our own character buffer */
        if (setvbuf(input, bufr, _IOFBF, 512) != 0)
            printf("failed to set up buffer for input file ");
        else
            printf("buffer set up for input file ");
        /* set up output stream for line buffering using space that
        will be obtained through an indirect call to malloc */
        if (setvbuf(output, NULL, _IOLBF, 132) != 0)
            printf("failed to set up buffer for output file ");
        else
            printf("buffer set up for output file ");
        /* perform file I/O here */
        /* close files */
        fclose(input);
        fclose(output);
        return 0;
    }
  • 相关阅读:
    json&display
    postgresql AutoVacuum系统自动清理进程
    postgresql vacuum操作
    C++ 在.h文件中包含头文件和在.cpp文件中包含头文件有什么区别
    ResetEvent、CreateEvent、SetEvent
    《转载》C语言的移位操作符
    《转载》如何使用M6117D看门狗定时器复位系统
    《转载》 Bit,Byte,WORD,DWORD区别和联系
    $.messager.alert
    对一个或多个实体的验证失败
  • 原文地址:https://www.cnblogs.com/lvdongjie/p/4955894.html
Copyright © 2011-2022 走看看