C标准库 setvbuf函数

setvbuf()函数用于将缓冲区与流相关联。

setvbuf()函数 语法

int setvbuf(FILE*p,char*bp,int type,unsigned n);

setvbuf()函数的语法参数说明如下表所示。

setvbuf()函数 语法

setvbuf()函数关联成功时返回0,否则返回非0值。

setvbuf()函数 示例

本示例使用setvbuf函数将缓冲区与流实现指定大小、指定类型的关联,其具体代码如下所示:

#include<stdio.h>
int main(void)
{
     FILE*input,*output;
     char bufr[512];
     input=fopen("file.in","r+b");/*打开文件*/
     output=fopen("file.out","w");/*打开文件*/
     if(setvbuf(input,bufr,_IOFBF,512)!=0)/*关联缓冲区与流*/
         printf("failed to set up buffer for input file ");
     else
         printf("buffer set up for input file ");/*输出提示信息*/
     if(setvbuf(output,NULL,_IOLBF,132)!=0)/*关联缓冲区与流*/
         printf("failed to set up buffer for output file ");
     else
         printf("buffer set up for output file ");/*输出提示信息*/
     fclose(input);/*关闭文件*/
     fclose(output);/*关闭文件*/
     return 0;
}

运行结果如图所示。

setvbuf()函数 示例

赞(0)
未经允许不得转载:极客笔记 » C标准库 setvbuf函数
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址