stdinredir1.c

来自「unix linux 编程实践源代码」· C语言 代码 · 共 37 行

C
37
字号
/* stdinredir1.c *	purpose: show how to redirect standard input by replacing file  *		 descriptor 0 with a connection to a file. *	 action: reads three lines from standard input, then *		 closes fd 0, opens a disk file, then reads in *		 three more lines from standard input */#include	<stdio.h>#include	<fcntl.h>main(){	int	fd ;	char	line[100];	/* read and print three lines */	fgets( line, 100, stdin ); printf("%s", line );	fgets( line, 100, stdin ); printf("%s", line );	fgets( line, 100, stdin ); printf("%s", line );	/* redirect input */	close(0);	fd = open("/etc/passwd", O_RDONLY);	if ( fd != 0 ){		fprintf(stderr,"Could not open data as fd 0\n");		exit(1);	}	/* read and print three lines */	fgets( line, 100, stdin ); printf("%s", line );	fgets( line, 100, stdin ); printf("%s", line );	fgets( line, 100, stdin ); printf("%s", line );}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?