對於我的項目,我們應該讀取一個文件並將其反向複製。我難以忍受的部分是如何讓程序從命令行讀取文件,因爲我不知道將使用哪個文件來測試該文件,而且我沒有給定的txt文件。有沒有辦法將變量分配給尚未聲明的文件,並創建一個顯示反向txt的新文件?對不起,如果這不明確,我會盡可能清楚,如果你需要我。有沒有辦法初始化尚未讀取的文件c
回答
使用在創建main時聲明的argv []數組傳遞文件名。因爲C中的fopen採用char或char數組,您可以通過命令行打開指定的文件。對於您需要的所有信息,請使用我鏈接的網站。
從命令行,你可以通過文件寫一些東西和文件,該文件將被扭轉
Your program looks like
int main(int argc,char *argv[])
{
//...
return 0;
}
編譯
gcc program.c -o out
您需要將文件這樣
./out file_to_write file_to_write_in_reverse
------------------------------------------------ - - - - - - 要麼 - - - - - - - - - - - - - - - - - - - --------------------------------
在你的程序
使用fgets()
和讀取的文件名file_to_write
您可以創建一個文件。
fopen()+ w+ mode
寫入數據,例如寫入字符串到文件
`fprintf()` or `fputs()`
使用fgets()
和閱讀的file_to_write_in_reverse
另一個文件名file_to_write_in_reverse創建
fopen()+ w mode
現在使用fseek()
, fgetc()
a nd fputc()
好的,謝謝,我打開打開(args [1],「r」);閱讀它。另外我不應該使用fopen(),fread(),fwrite()等,但從我的理解,我可以在它的位置使用open(),write()和read()。 – user2872131
是的你可以使用'open()','write()'和'read()'。如果你想在閱讀模式文件中打開文件應該存在。如果你想用寫模式創建文件使用打開。 – Gangadhar
@ user2872131如果你覺得這有幫助,請[接受](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)它 – Gangadhar
- 1. ASP.net C#ConnectionString屬性尚未初始化
- 2. 連接屬性尚未初始化C#
- 3. C#.net ExecuteNonQuery:CommandText屬性尚未初始化
- 4. ExecuteScalar尚未初始化
- 5. libgdx尚未初始化
- 6. java:有什麼辦法避免寫命名類? (變量尚未初始化)
- 7. 有沒有辦法初始化保存初始HTML的Vue對象
- 8. 有沒有辦法內聯初始化異常的數據?
- 9. 有沒有辦法重置文件到初始狀態?
- 10. 有什麼辦法讓C#不會抱怨實際上未初始化的未初始化變量?
- 11. 有沒有辦法讀取clojure文件中的所有表單?
- 12. 有沒有辦法不必兩次初始化數組?
- 13. 有沒有辦法在初始化時驗證backbone.js模型?
- 14. 有沒有辦法初始化一個空片?
- 15. 有沒有辦法在大括號中初始化成員?
- 16. 有沒有辦法在指定初始化
- 17. 有沒有辦法在Java中重新初始化靜態類?
- 18. 有沒有辦法在CUDA中初始化block_size?
- 19. 有沒有辦法用一行來初始化一個容器?
- 20. 有沒有辦法手動初始化JSM串行器?
- 21. 有沒有辦法用erl初始化變量?
- 22. 有沒有辦法在Office.js中禁用初始化定時器?
- 23. 有沒有辦法有效地同時讀取多個文件?
- 24. java.lang.Exception的:ServletConfig類尚未初始化
- 25. SelectCommand.Connection屬性尚未初始化。 MySQL的
- 26. ASP.NET的ExecuteReader:CommandText屬性尚未初始化
- 27. 的ExecuteNonQuery CommandText屬性尚未初始化
- 28. 的ExecuteNonQuery:Connection屬性尚未初始化
- 29. 有沒有辦法讀取與「ifstream的」
- 30. 有沒有辦法讀取R中的.twbx文件?
你想從stdin讀取或從args讀取參數並打開基於該參數的文件? –
您可以使用'main'的'argc'和'argv'參數從命令行讀取文件名。 –