Buongiorno a tutti! sono nuovo e sto imparando a programmare in C per l'università.
Ho creato un programma per la battaglia navale creando un nuovo tipo dati nave che tra i vari campi presenta una stringa per l'inserimento del nome. Poi la flotta del giocatore l'ho dichiarata come una array di "navi".
Assegno tramite una funzione il nome della nave, tipo "Portaerei",ecc, poi provo a visualizzarlo.
Il programma al posto del nome mi fa vedere delle lettere strane.
Per imparare mi sono messo a giocare con le stringhe, per scoprire poi nel programma della battaglia navale dove è l'errore.
codice:
#include<stdio.h>
void manipola(char *a);
int main()
{
char stringa[20]="ciao";
manipola(stringa);
return 0;
}
void manipola(char *a)
{
int i;
printf("%s\n", a);
a="asdfas";
printf("%s\n", a);
scanf("%s", a);
printf("%s\n",a);
}
Nel codice sopra passo per indirizzo la stringa, poi provo ad assegnarne io il contenuto prima per assegnamento e poi tramite scanf. Però il programma non funziona. Potreste darmi una mano?
Grazie