Originariamente inviato da quit10
Ciao a tutti!
Ho un problema: io ho creato una funzione che crea una matrice di tipo char, ad esempio
codice:
char miafunzione (char miocarattere)
{ 
char matrice[3];
matrice[0]='a';
matrice[1]=miocarattere;
matrice[2]='b';
matrice[3]='\0';
}
ora voglio che la funzione restituisca la matrice "matrice", ho provato con "return matrice", però il programma restituische errore, in quanto considera "matrice" una variabile di tipo char, non una matrice.
Qualcuno sa dirmi come fare?
Grazie in anticipo!
  • La funzione "char miafunzione (char miocarattere)" e' definita in modo che restituisca un carattere. quindi non puoi restituire un qualcosa che sia diverso da un carattere.
  • Anche se la ridefinisci in modo che ti restituisca una array di caratteri il compilatore non te la compilerebbe perche' in C/C++ le funzioni non possono restituire array.
  • In ogni modo attento che avrai certamente un comportamento indefinito, perche' "sfori" (accedi al 4 elemento di matrice, pur avendone definiti solo 3.