1
程序只是讀取文件計數字符串及其長度。但字符串的計數器p給我一個錯誤的結果。如果我只是打印計數p,結果將是正確的,但如果我打印元素a [i] [1](它應該是p),它會給我一個錯誤的結果。對於在元件的示例的[0] [1] - 它打印12,在那裏它被認爲是1。c - 數組錯誤計數結果
int main(int argv,char* argc[]) {
FILE *f = fopen("d.txt","r");
int a[700000][1];
char str[120];
int i=0,l,p=0,n;
while (fgets(str,120,f)) {
l=strlen(str)-1;
p++;
a[i][0]=l;
a[i][1]=p;
i++;
}
// if I printf("%d",p); result will be correct
n=i-1;
for (i=0;i<=3;i++) {
printf("%d\n",a[i][1]); //result - 12 6 4 8
}
close(f);
return(0);
}
d.txt
未有\ 0 一個\ 0 是\ 0 這裏\ 0
結果將是 - 4 2 4 4
我們不能沒有你的輸入數據複製本。請按照指示出示您的[MCVE]。 –
這是什麼:'int a [700000] [1];' ?? –
int a [5] [1];看上去好些? –