Ich habe ein Problem der Ausführung, wenn ich trey, um dieses Programm auszuführen, ist es einfach ein mehrdimensionales Array mit ausgewählten Werten dynamisch zuzuweisen und es einfach Null. Es kompiliert korrekt, aber es wird nicht ausgeführt.Mehrdimensionale Arrays dynamisch zuweisen
#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;
}
danke.
ja es ist eigentlich :) danke – kotasha
Verwendung 'fgets' von der Tastatur zu lesen, dann' sscanf' den Wert auszulesen oder verwenden Sie einfach 'atoi' zu konvertieren. –
'** (tab + i + j)' ist der falsche Weg, um auf Elemente zuzugreifen. Sie könnten 'tab [i] [j]' verwenden. –