FILE *stdout 和 STDOUT
来源:互联网 发布:车载电子狗软件哪个好 编辑:程序博客网 时间:2024/06/04 22:47
首先要知道 FILE *stdout 和 STDOUT_FILENO 的区别。
stdin类型为 FILE*
STDIN_FILENO类型为 int
使用stdin的函数主要有:fread、fwrite、fclose等,基本上都以f开头
使用STDIN_FILENO的函数有:read、write、close等
操作系统一级提供的文件API都是以文件描述符来表示文件。STDIN_FILENO就是标准输入设备(一般是键盘)的文件描述符。
标准C++一级提供的文件操作函数库都是用FILE*来表示文件,stdin就是指向标准输入设备文件的FILE*。
如下:
stdin, stdout, stderr - standard I/O streams
Synopsis#include <stdio.h>
extern FILE *stdin;
extern FILE *stdout;
extern FILE *stderr;
#include<stdio.h>
#include<unistd.h>
#include<string.h>
#include<errno.h>
#define CHANGE_BY_FREOPEN /* 需要注释掉,进行切换 */
int main(int argc,char**argv){
char buf[]="hello,world\n";
#ifdef CHANGE_BY_FREOPEN
freopen("stdout_text.txt","w",stdout);
//freopen("stderr_text.txt","w",stderr);/* stderr */
#endif
printf("%s",buf);
fwrite(buf,strlen(buf), 1,stdout);
write(STDOUT_FILENO,&buf,strlen(buf));
perror("error out");/* stderr */
return(0);
}/* stdouttest.c */
- FILE *stdout 和 STDOUT
- stdout
- FILE *stdout 和 STDOUT_FILENO 的区别
- FILE *stdout 和 STDOUT_FILENO 的区别
- stdout和stderr
- stdin、stdout和stderr
- stdout 和 stderr
- stdout、stdin和stderr
- Bash 中将 stderr 和 stdout 重定向到一个file
- perl中的STDOUT和STDERR
- fflush(stdin)和fflush(stdout)
- fflush(stdin)和fflush(stdout)
- fflush(stdin)和fflush(stdout)
- fflush(stdin) 和 fflush(stdout)
- fflush(stdin)和fflush(stdout)
- Android查看stdout 和stderr
- stderr和stdout详细解说
- fflush(stdin)和fflush(stdout) .
- Bootstrap3学习第一轮(入门)
- 二维分数阶Fouirer变换matlab程序
- 文件的读写和网络
- 开源图形库 c语言-图形图像库 集合
- Android四款系统架构工具
- FILE *stdout 和 STDOUT
- VS编译的程序在其他机子上显示MSVCP110D.DLL丢失问题
- 关于绘制中的混合
- UILable使用
- mysql 命令行登录详解
- yii ajax
- UITextField的使用
- mysql导出数据库脚本
- UIButton 使用