嗨,我有一个问题,我需要为2D数组分配空间,但不知何故卡住了。之后,它应该进入for循环,但永远不会到达那里。有人知道为什么吗?
int len = read_file("staedte.csv", staedte, laender, bewohner);
char **resultat;
int resultatzaehler = 0;
resultat =(char **) malloc (100 * sizeof(char));
if(resultat == NULL){
printf("Malloc failed to allocate space");
exit(1);
}
for(int i = 0; i < 100; i++){
resultat[i] =(char *) malloc (100);
if(resultat[i] == NULL){
printf("Malloc failed to allocate spacce 2");
exit(1);
}
}
最佳答案
您应该通过使用进行分配
resultat = (char**) malloc(100 * sizeof(char *))
for(i = 0; i < 100; i++) {
resultat[i] = (char*) malloc(100 * sizeof(char))
}