setbuf函数使用注意事项
来源:互联网 发布:小号云免费源码 编辑:程序博客网 时间:2024/06/08 18:46
程序输出有两种方式:一种是即时处理方式,另一种是先暂存起来,然后再大块写入的方式,前者往往造成较高的系统负担。因此,c语言实现通常都允许程序员进行实际的写操作之前控制产生的输出数据量。
这种控制能力一般是通过库函数setbuf实现的。如果buf是一个大小适当的字符数组,那么:
setbuf(stdout,buf);
语句将通知输入/输出库,所有写入到stdout的输出都应该使用buf作为输出缓冲区,直到buf缓冲区被填满或者程序员直接调用fflush(译注:对于由写操作打开的文件,调用fflush将导致输出缓冲区的内容被实际地写入该文件),buf缓冲区中的内容才实际写入到stdout中。缓冲区的大小由系统头文件<stdio.h>中的BUFSIZ定义。
举例说明如下(代码通过VS2008编译)
#include <iostream>
#include<fstream>
int main(int argc, char* argv[])
{
char* outbuf = new char [100];
setbuf(stdout,outbuf);//将输出流绑定到outbuf上
puts("helloworld\n");//内容输入到outbuf内
//setbuf(stdout,NULL);//如果启用这行代码,输出流恢复原来的状态,puts输出到控制台
delete[] outbuf;
system("pause");
return 0;
}
- setbuf函数使用注意事项
- setbuf函数使用注意事项
- setbuf函数使用注意事项
- setbuf函数使用注意事项
- setbuf函数使用注意点
- setbuf () 函数
- setbuf函数详解
- setbuf函数 详解
- setbuf函数详解
- setbuf函数详解
- c函数setbuf
- setbuf
- setbuf()
- setbuf
- setbuf
- setbuf
- setbuf
- setbuf()
- 开源 免费 java CMS - FreeCMS1.2-功能说明-网上调查
- 【java常见问题】——如何判断文件是否为空?
- Linux Socket编程(不限Linux)
- 工厂设计模式
- 手把手教您:iOS 6.1~6.12 完美越狱教程
- setbuf函数使用注意事项
- Tomcat中server.xml文件内各节点详解
- 开源 免费 java CMS - FreeCMS1.2-功能说明-互动信件
- Android Says Bonjour
- 一个小技巧
- CONTAINING_RECORD宏的详细解释(转)
- Android视频资料整理
- 冯小刚《私人定制》开机日子未定 白百何望出演
- Base64算法