Oppure

Loading
27/09/10 12:34
bios1993
Scusate ragazzi io ho una domanda da farvi e cioè perchè se io ho due vettori di caratteri da 100 in cui la destinataria non è inizializzata invece il sorgente ha un valore tipo "ciao", perchè il programma si blocca?

char test[100];
char parola[100] = "ciao";
strcat(test,parola); // qui si blocca il programma!


Io avrei un opinione e vorrei sapere se è corretta:

(penso sia corretta) perchè il vettore ha caratteri sporchi e perciò non puo essere appesa nessuna stringa
Ultima modifica effettuata da bios1993 27/09/10 12:35
aaa
27/09/10 12:50
lumo
Postato originariamente da bios1993:

Scusate ragazzi io ho una domanda da farvi e cioè perchè se io ho due vettori di caratteri da 100 in cui la destinataria non è inizializzata invece il sorgente ha un valore tipo "ciao", perchè il programma si blocca?


char test[100];
char parola[100] = "ciao";
strcat(test,parola); // qui si blocca il programma!


Io avrei un opinione e vorrei sapere se è corretta:

(penso sia corretta) perchè il vettore ha caratteri sporchi e perciò non puo essere appesa nessuna stringa

esattamente, infatti in questo caso strcat non trova il delimiter "
Postato originariamente da bios1993:

Scusate ragazzi io ho una domanda da farvi e cioè perchè se io ho due vettori di caratteri da 100 in cui la destinataria non è inizializzata invece il sorgente ha un valore tipo "ciao", perchè il programma si blocca?


char test[100];
char parola[100] = "ciao";
strcat(test,parola); // qui si blocca il programma!


Io avrei un opinione e vorrei sapere se è corretta:

(penso sia corretta) perchè il vettore ha caratteri sporchi e perciò non puo essere appesa nessuna stringa

esattamente, infatti in questo caso strcat non trova il delimiter "{parsed_message}" che si usa nelle stringhe per segnarne la fine. Per far funzionare quel codice dovresti fare
char test[100];
char parola[100] = "ciao";
test[0]='{parsed_message}';
/* o meglio 
strcpy( parola, "ciao" );
memset( test, 0, 100*sizeof(char) );
*/
strcat( test, parola );
" che si usa nelle stringhe per segnarne la fine. Per far funzionare quel codice dovresti fare
char test[100];
char parola[100] = "ciao";
test[0]='
Postato originariamente da bios1993:

Scusate ragazzi io ho una domanda da farvi e cioè perchè se io ho due vettori di caratteri da 100 in cui la destinataria non è inizializzata invece il sorgente ha un valore tipo "ciao", perchè il programma si blocca?


char test[100];
char parola[100] = "ciao";
strcat(test,parola); // qui si blocca il programma!


Io avrei un opinione e vorrei sapere se è corretta:

(penso sia corretta) perchè il vettore ha caratteri sporchi e perciò non puo essere appesa nessuna stringa

esattamente, infatti in questo caso strcat non trova il delimiter "{parsed_message}" che si usa nelle stringhe per segnarne la fine. Per far funzionare quel codice dovresti fare
char test[100];
char parola[100] = "ciao";
test[0]='{parsed_message}';
/* o meglio 
strcpy( parola, "ciao" );
memset( test, 0, 100*sizeof(char) );
*/
strcat( test, parola );
'; /* o meglio strcpy( parola, "ciao" ); memset( test, 0, 100*sizeof(char) ); */ strcat( test, parola );
Ultima modifica effettuata da lumo 27/09/10 12:51
aaa
27/09/10 18:43
bios1993
grazie per la risposta se stato molto utile!
aaa