santaclause83
27-08-2007, 14:52
1--ho inizializzato un array di char copiandoci sopra un pezzo da un altro array di char,alla fine vi ho concatenato il '\0'
2--fatto una printf per controllare,e effettivamente l'array è stato inizializzato
3--subito dopo faccio un ciclo su sull'array e il programma si blocca al primo accesso,senza nemmeno restituire segmentaiton fault o eccezioni varie...??
codice:
while(j != lung_secondo){
request[j]=secondo_mess[j];
j++;
}
request[j]='\0';
printf("comando = %s;\n",request);
j=0;
//alloco lo spazio per il nome della matrice
if((nomemat = (char *)malloc(sizeof(char)*MAXNOME))== NULL){
printf("malloc per inizializzazione comando fallita,terminazione client");
exit(1);
}
//qui sotto il programma si blocca,e se sostituisco il while con delle printf
//di elementi dell'array si blocca comunque,quindi è l'accesso all'array che
//manda in palla il programma,ma non mi spiego perchè...
while(request[j] != '_'){
printf("%s\n",request[j]);
nomemat[j]=request[j];
j++;
}
printf("nomemat = %s,datimat = %s",nomemat,request[j]);//non viene stampato
2--fatto una printf per controllare,e effettivamente l'array è stato inizializzato
3--subito dopo faccio un ciclo su sull'array e il programma si blocca al primo accesso,senza nemmeno restituire segmentaiton fault o eccezioni varie...??
codice:
while(j != lung_secondo){
request[j]=secondo_mess[j];
j++;
}
request[j]='\0';
printf("comando = %s;\n",request);
j=0;
//alloco lo spazio per il nome della matrice
if((nomemat = (char *)malloc(sizeof(char)*MAXNOME))== NULL){
printf("malloc per inizializzazione comando fallita,terminazione client");
exit(1);
}
//qui sotto il programma si blocca,e se sostituisco il while con delle printf
//di elementi dell'array si blocca comunque,quindi è l'accesso all'array che
//manda in palla il programma,ma non mi spiego perchè...
while(request[j] != '_'){
printf("%s\n",request[j]);
nomemat[j]=request[j];
j++;
}
printf("nomemat = %s,datimat = %s",nomemat,request[j]);//non viene stampato