所以說我正在閱讀一個文本文件的二維數組,並且我不知道尺寸是什麼,因此導致我使用malloc。這就是說,這是我的失敗嘗試,希望你們可以跟隨和指導我,因爲我很想知道如何做到這一點!從文本文件讀取2d數組而不知道邊界?
void 2dArray(double **arr, int N, int M) {
int i,j;
FILE *fp;
fp = fopen("array.txt", "r");
for(i=0; i < N; i++) {
for(j=0; j < M; j++) {
fscanf(fp, "%lf", &arr[i][j]);
}
}
}
int main() {
int **array;
// How do I initialize this??
// heres my attempt:
array = (double **)malloc(sizeof(double*);
2dArray(array, N, M);
//Where would I get N and M?
你能澄清這個問題?假設你的文本文件包含12個數字。那麼你怎麼會知道2D數組包含3×4個元素,而不是4×3(或6×2或12×1等)?如果您在問題中包含了文本文件的示例,它可能會有所幫助。 –