Quote:
Originariamente inviato da ciusss89
Grazie per l'illuminazione.  Ora sto meglio.
Codice:
#include <stdio.h>
#include <string.h>
char* str(char *);
int main (){
char scemo[]="COSI_TI_PIACE?";
char *p;
p=str(scemo);
printf ("Contenuto di p -> [ %s ]",p);
return 0;
}
char* str(char *scemo){
strcpy(scemo,"NO_COMMENT");
return scemo;
}
|
se passi la stringa per riferimento alla funzione e ci copi dentro una tua stringa con strcpy ( in realtà giochi con i puntatori ) è quasi inutile fare un return, per altro fai un return dello stesso puntatore che ti viene dato in ingresso, quindi non so a cosa possa servire.
Dovresti anche dichiarare la lunghezza di "scemo" tenendo in considerazione anche un carattere da dedicare al tappo "\0" perché così è un puntatore appeso in memoria che non si sa bene come sia allocato.