1、使用键盘和屏幕做为输入和输出
deepfuture@deepfuture-laptop:~/private/mytest$ gcc -o test19 test19.c
deepfuture@deepfuture-laptop:~/private/mytest$ ./test19
deepfuture
deepfuture
javaeye
javaeye
com
com
^C
deepfuture@deepfuture-laptop:~/private/mytest$
2、使用>指定标准输出
deepfuture@deepfuture-laptop:~/private/mytest$ ./test19 >xx.txt
deepfuture.iteye.com
^C
deepfuture@deepfuture-laptop:~/private/mytest$ cat xx.txt
deepfuture.iteye.com
3、使用<>指定标准输入
deepfuture@deepfuture-laptop:~/private/mytest$ ./test19 <test19.c> xx.c
deepfuture@deepfuture-laptop:~/private/mytest$ cat xx.c
#include <stdio.h>
#include <unistd.h>
#define BUFFSIZE 100
int main(void){
int n;
char buf[BUFFSIZE];
//STDIN_FILENO是输入文件句柄,一般为0
//STDOUT_FILENO是输出文件句柄,一般为1
while((n=read(STDIN_FILENO,buf,BUFFSIZE))>0){
if (write(STDOUT_FILENO,buf,n)!=n){
perror("write error!\n");
}
}
if (n<0){
perror("read error!\n");
}
}
deepfuture@deepfuture-laptop:~/private/mytest$
#include <stdio.h> #include <unistd.h> #define BUFFSIZE 100 int main(void){ int n; char buf[BUFFSIZE]; //STDIN_FILENO是输入文件句柄,一般为0 //STDOUT_FILENO是输出文件句柄,一般为1 while((n=read(STDIN_FILENO,buf,BUFFSIZE))>0){ if (write(STDOUT_FILENO,buf,n)!=n){ perror("write error!\n"); } } if (n<0){ perror("read error!\n"); } }