//echo_eof.c

#include&int main(void)

{char ch;

while ((ch = getchar()) != EOF) putchar(ch); return 0;}

這段函數,可以用來重定向嗎?

書本上講了這一段,但是我用windows做不出來,怎麼樣才能做出來,我附上圖片,求大神解答。

這是我運行的結果,,,,我是不是傻了點?


感覺你應該是沒有切換到你編譯生成的exe可執行文件所在的路徑。可以看下這篇博客,是我當初自己寫的,希望能有所幫助。C語言重定向 - xuan_liu123的博客 - 博客頻道 - CSDN.NET


學習C Primer Plus的時候也遇到了同樣的問題。

最後是這樣解決的:

1.在電腦開始菜單欄中的「運行」搜索框中搜索「cmd」,進入DOS窗口;

2.把你編寫的程序的exe文件直接拖入到DOS窗口中,一般你的exe文件存儲在Debug文件夾中。至於具體怎麼使用輸入目錄的方式運行你可自行百度。

3.如圖所示,我劃紅線的部分是直接輸入的重定向輸出的文本文件名。需要注意的是直接在你的exe文件路徑後面鍵入重定向運算符和文件名即可。另外文件需要加上後綴名。

4.最後生成的文件位於我用黃線框出的地方,那是我最初打開DOS窗口顯示的路徑,不知道你自己的是不是也是這樣,可以自己看看摸索一下!

大致的情況就是這樣。屬於計算機小白,最近正在自學相關內容,有錯誤也請海涵~


樓主,我和你用的同樣的書,遇到了同樣的問題,剛才在知乎解決了,那個words文件後面需要後綴.txt.


你這是編譯器里運行的窗口吧應該在DOS窗口運行才對,搜索CMD的那個我是文件放在桌面cd desktop 進入目錄以後再運行
沒問題啊用DOS跟書上描寫的一樣問題出在visual studio上你用IDE編寫文件形式就不一樣了

一模一樣 me to too


推薦閱讀:
查看原文 >>
相关文章