输入重定向
标准输入和输入是可以重定向的,事实上,程序本身并不关注这个。
例如:使用符号 < 可以实现输入重定向,它将把键盘输入替换为文件输入:如果程序中使用了函数getchar,则会直接从文件中读取。示例如下:
int main() {
char c;
while ((c = getchar()) !=EOF){
printf("%c ", c);
}
return 0;
}
将上述代码编译为proc,然后编辑一个文本文件例如a.txt
然后执行
./proc <a.txt
可以实现将文本文件a.txt中的内容打印出来
再例如
otherprog | prog
上述命令会同时运行otherprog和prog两个程序,并且会将程序otherprog的标准输出通过管道重定向到程序prog的标注输入上。
再例如,可以用>重定向标准输出到某个文件中。
命令行执行函数
函数system(char *)
执行包含在字符串s中的命令,然后继续指向当前程序。例如在UNIX操作系统环境下,语句
system("date")
将执行命令行date
,它在标准输出上打印当前的日期和时间。