嘿伙计们,我有一个问题,我需要为 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))
}