私はこのプログラムを実行するときに実行の問題がありました。選択した値を持つ多次元配列を動的に割り当て、それをゼロにするだけです。それは正しくコンパイルされますが、実行されません。多次元配列を動的に割り当てる
#include<stdio.h>
#include<stdlib.h>
int main(void) {
int **tab;
int ligne;
int col;
printf("saisir le nbre de lignes volous\n");
scanf("%d", &ligne);
printf("saisir le nbre de colonnes volous\n");
scanf("%d", &col);
tab = (int**)malloc(ligne*sizeof(int*));
int i ,j;
for (i=0 ; i < ligne; i++) {
*(tab+i) = (int*)malloc(col*sizeof(int));
}
for (i = 0; i < ligne; i++) {
for (j = 0; j < col; j++) {
**(tab + i+ j) = 0;
}
}
for (i = 0; i < ligne; i++) {
for (j = 0; j < col; j++) {
printf("%d\t", **(tab + i +j));
}
printf("\n");
}
free(tab);
return 0;
}
ありがとうございます。
ええ、実際にそれはあなたがして 'sscanf'が値を読み出したり、単純に変換する' atoi'を使用するには、キーボードからの読み取りに 'fgets'を使用 – kotasha
感謝:)です。 –
'**(tab + i + j)'は要素にアクセスするには間違った方法です。 'tab [i] [j]'を使うことができます。 –