我在學習C語言:-)如何標準輸出重定向到一個字符串在ANSI C
...我已經尋找如何在計算器解決這個初學者,但沒有什麼我能理解。 :-(
之前發佈這個線程,我總是stdout重定向到一個文件,然後使用fread
system ("print.exe > tempfile.tmp");
FILE *fp = fopen (tempfile.tmp , "rb");
char Str[Buf_Size];
fread (Str,sizeof(char),Buf_Size,fp);
讀給一個字符串,如果這樣做,就會浪費大量的時間在文件I/O。
我怎麼能標準輸出重定向到C語言的字符串不重定向到一個臨時文件?
這可能嗎?謝謝。
環境: Windows and GCC
Linux還是Windows? –
如果你使用的是POSIX-ish環境,你可以通過'FILE * fp = popen(「print.exe」,「r」);'讀取'print.exe'的輸出。如果您使用的是Microsoft-ish系統,則可以使用'_popen()'代替'popen()'。 –
@Jonathon Reinhart in windows –