我想寫一些數據到文件中。但是我有太多的數據,每個數據文件都應該根據節點的數量和每個數據文件的邊緣數量通過一定的結構進行命名。fopen函數在C +中寫入文件
例如:具有10個結點和20層的邊緣的數據,它的名稱將是s_10_20.txt
對於具有14個節點和30層的邊緣的數據,它的名稱將是s_14_30.txt
結構我以下是:s_numOfNodes_numOfEdges.txt
(知道numOfNodes
和numOfEdges
已經從數據文件掃描)
我寫的代碼是:
FILE *fp;
fp=fopen("s_%d_%d.txt",numOfNodes,numOfEdges,"w+");
這是給我下面的錯誤:
- 傳遞的fopen的參數2,使指針從整數沒有投
- 參數太多功能打開
我怎樣才能把它寫在任何其他方式?
你爲什麼假設'fopen()'接受一個格式字符串,而不是?閱讀其文檔。理解字符串格式不是魔術,當你將百分號寫入字符串文字(C不是Python!)時,它不會自動發生,然後使用'snprintf()'構造適當的文件名。 – 2013-07-12 08:21:36
@Dayalrai請不要在cplusplus.com。首先,因爲這是C,而不是C++,其次是因爲cplusplus.com包含嚴重錯誤和大量錯誤信息。 [Here's](http://pubs.opengroup.org/onlinepubs/009695399/functions/fopen.html)'fopen()'的官方文檔。 – 2013-07-12 08:23:21
ooppss接受我的道歉:( –