1樓:
// cin和cout重定向不正確,應該如下修改
int main(int argc, char *argv)
2樓:
在main函式這裡,你居然這麼寫:
ifstream cin("in2.txt");
請問cin是什麼?cin在預設情況下是c++的一個全域性物件,你這麼寫就等於在main裡定義了一個區域性物件cin,你自己定義的cin把系統預設的那個cin給覆蓋了。可是這個區域性物件的作用域也就限於main函式了。
所以當你在另外一個函式中寫
cin>>start->value;
createdata函式中的這個cin是系統預設的cin,它從鍵盤讀入字元。
而如果你把createdata的**移動到了main函式中,你再寫cin>>start->value,用的是你自定義的那個區域性的cin,它從檔案讀入字元。
忠告:注意變數的作用域,注意不要覆蓋全域性變數。
還有就是你的類
class unit ;
建議寫成這樣
struct unit ;
純粹資料組成的類沒有什麼意義,建議寫成結構體意義更明確些。
c++中怎樣把一個檔案作為引數傳遞給函式
3樓:
/**功能: 從檔案中讀入資料
*日期: 2008.9.4
*輸入: filename---檔名
*輸出: datastorage--儲存資料的倉庫 由你確定*返回: 0----執行正確
* -1---遇到錯誤
*/int getdata(const char *filename,datastruct *datastorage)
/**開始讀資料
*/if(fread(datastorage,sizeof(*datastorage),1,fp)<1)
fclose(fp);
return 0;}
4樓:匿名使用者
可以把檔名作引數啊,用string或者char *不就行了.
5樓:匿名使用者
對,直接用檔案關聯的檔案流物件的引用就可以了。
f(fstream& file,...)
6樓:匿名使用者
f(fstream file, ...,)
c語言中如何將結果傳遞給另c語言檔案
拒絕996的瀟灑程式設計師 通過函式的傳址引數 引用或指標 或返回值傳遞。多個人合作時,必須提前約定好介面函式的宣告格式。這裡的所謂介面函式就是所有可能需要用來互相傳遞結果的函式 這個要用 版本管理工具,有商用的也有開源的。開源的比如svn,cvs,商用的如clearcase等。工作的模式基本上是 ...
C語言中形參與實參怎麼傳遞,c語言中形參和實參的區別?
我簡單描述一下 c語言傳遞引數機構是這樣的 非指標類的資料傳遞引數時傳數值,指標類資料傳遞引數時傳地址 這裡陣列名也算指標 比如int max int a,int b 這時候如果呼叫這個函式max x1,x2 僅僅將x1和x2的數值傳遞給函式max,a與x1佔有不同的記憶體區域 int max in...
在C語言中檔案的存取方式是什麼,C語言中檔案的存取方式是什麼
在c語言中,開啟檔案可以指定檔案的存取方式。開啟用函式fopen。其原型為 file fopen const char path,const char mode 需要包含標頭檔案stdio.h。當開啟成功時會返回file 指標,用於後續檔案的讀寫關閉等操作。引數path為檔案的路徑及檔名。mode即...