stdout stdin stderr

当一个程序运行的时候就会在进程中创建3个数据流,作为这个程序的输入、输出、和错误的输出

eg.

#include<stdio.h>

#include<fcntl.h>

main(){

  fprintf(stdout,"hello");

  fprintf(stderr,"world");

}

输出的结果为worldhello,因为stdout有缓冲的机制C++中的cout也是一样的

如果没有碰到\n或者endl则不会立即输出,主要是为了高效率,当然会在程序的流程中造成bug的假象,stderr是立即的输出。

总之三个流的读写需要使用fread,跟fprintf

posted @ 2012-10-08 15:45  Epirus  阅读(177)  评论(0编辑  收藏  举报