Re: [問題] 有關數據print出到data檔的問題

看板C_and_CPP作者 (藍影)時間15年前 (2010/05/12 23:31), 編輯推噓1(1017)
留言18則, 4人參與, 最新討論串2/2 (看更多)
不知道這種方式是不是你能接受的.. // ================================== // filename: fp_sample.cpp // date : 2010.5.12 // author : edison.shih. // ================================== #include <stdio.h> #include <stdlib.h> #define FILE_CNT 10 #define BUF_LEN 200 int main(int argc, char **argv) { int i; FILE *fp[FILE_CNT], *fpc=NULL; char filename[BUF_LEN]; // open the all file pointer. for(i=0; i<FILE_CNT; i++) { sprintf(filename, "sample-%d.dat", i); fp[i] = fopen(filename, "wb"); } // the method to write to file. for(i=0; i<FILE_CNT*100; i++){ fpc = fp[i%FILE_CNT]; fprintf(fpc, "%d\r\n", i); } // close the all file pointer. for(i=0; i<FILE_CNT; i++){ fclose(fp[i]); } return 0; } //========================================================= 當然有壞處, 據我所知, 開檔有個一定的上限 ※ 引述《dadada123 (祐祐)》之銘言: : 這是我的問題所在--->ofstream ofile("sample.dat"); : 我寫了一個產生數據的程式 : 但是跑出來的數據需要經過分割處理 : 例如:我一共跑出10組數據,我要分割成sample-1.dat : sample-2.dat : sample-3.dat : . : . : . : sample-10.dat : 我要如何撰寫我的程式碼,才能讓我一次把資料分割完畢 : 因為我發現ofstream ofile("sample.dat")好像不能使用矩陣,或者參數 : 只要是在" "裡頭的都會直接變成檔名 = =|| : 不知道有沒有方法可以解決這個問題,我不想要一次RUN出來之後再一個一個手動分割 : 非常緊急~~希望能C語言強者可以幫忙解答,真的很急(再次強調) : <(ˍ"ˍ)> 萬事拜託了 -- 我期待 我等待 肩狹骨上的翅膀早些長出來 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 120.126.194.160

05/12 23:36, , 1F
剛才注意到原po是C++,po 錯 sorry了..
05/12 23:36, 1F

05/12 23:37, , 2F
預設 Linux 開檔是 1024 個,基本上也夠用了 XDDD
05/12 23:37, 2F

05/12 23:37, , 3F
(Windows最大可以開幾個?我倒是不清楚了)
05/12 23:37, 3F

05/12 23:38, , 4F
其實也說不上錯不錯 這個程式在C++完全可以用的 XD
05/12 23:38, 4F

05/12 23:54, , 5F
分的好均勻~如果是我直接前後切10塊了 @@
05/12 23:54, 5F

05/13 00:35, , 6F
請問 l 大-分得均勻是?前後切的意思是?(中文不好,見諒)
05/13 00:35, 6F

05/13 00:46, , 7F
你的程式 「前後切」
05/13 00:46, 7F

05/13 00:46, , 8F
F1 F2 F3 ... F10 F1 F2 F3 ... F10
05/13 00:46, 8F

05/13 00:46, , 9F
1 2 3 ... 10 1 101 201 ... 901
05/13 00:46, 9F

05/13 00:46, , 10F
11 12 13 ... 20 2 102 202 ... 902
05/13 00:46, 10F

05/13 00:46, , 11F
... ... ... ... ... ... ... ...
05/13 00:46, 11F

05/13 00:46, , 12F
991 992 993 ... 1000 100 200 300 ... 1000
05/13 00:46, 12F

05/13 00:56, , 13F
LPH66 大大正解! > <
05/13 00:56, 13F

05/13 00:57, , 14F
因為有些資料會有局部的關連性, 所以直接切成好幾份
05/13 00:57, 14F

05/13 00:57, , 15F
不做處理, 對有些結果來講會非常糟
05/13 00:57, 15F

05/13 01:16, , 16F
感覺是我中文比較不好, 拍謝^^"
05/13 01:16, 16F

05/13 01:51, , 17F
謝謝 LPH66 及 loveme00835 大大解說
05/13 01:51, 17F

05/13 02:31, , 18F
不是大大 QQ
05/13 02:31, 18F
文章代碼(AID): #1BwidkUh (C_and_CPP)
文章代碼(AID): #1BwidkUh (C_and_CPP)