stdinとstdoutの両方のファイル記述子がそれを指しています。それはどのように機能しますか?UNIX端末とそれと相互作用するシステムコールを理解するための優れたリソースを示すことができますか。
質問する
23512 次
1 に答える
46
dev/tty
現在のコンソールを表すファイル システム オブジェクトです。コマンドラインからこの「ディレクトリ」にファイルをコピーすると、これらのファイルの内容がコンソールに出力されます。
cp myfile.txt /dev/tty
と同等です
cat myfile.txt
これらのオブジェクトは、使い慣れたファイル API を使用してコンソールと対話できるようにするために存在します。これは、コンソール API をファイル API と統合する賢い方法です。fopen
、などを使用fprintf
して、通常のファイルを操作するのと同じ方法でコンソールを操作できます。
"Hello, world\n"
この例では、ターミナルに次のように書き込みます。
#include <stdio.h>
int main (int argc, const char * argv[]) {
FILE *f = fopen("/dev/tty", "w");
fprintf(f, "Hello, world!\n");
return 0;
}
于 2012-05-03T16:23:38.170 に答える