编写一个小型C程序,编译时需要另一个程序 从输入终端,在运行时给出第二个结果 程序。 (注意:关键是,想想UNIX)。
假设程序是1.c. 然后,在编译时
$ cc -o 1 1.c
int main()
{
printf("Hello World\n");
}
^D
$ ./1
Hello World
$
答案 0 :(得分:14)
这是一个古老的风靡我猜
我的程序,tty.c:
#include "/dev/tty"
外壳:
$ gcc tty.c
int main() {
printf("Hey\n");
} *Ctrl-D here*
In file included from tty.c:1:
/dev/tty: In function ‘main’:
/dev/tty:2: warning: incompatible implicit declaration of built-in function ‘printf’
$./a.out
Hey
答案 1 :(得分:1)
使编译读取文件的最合理方法是#include
,但对我来说,如何在所有Unix系统上以可移植的方式读取标准输入并不明显(在Linux中很容易,感谢/proc
!的魔力,但这不是便携式的。)