14. maj 2005 - 15:06Der er
9 kommentarer og 1 løsning
Jeg får ikke gemt det korrekte når jeg bruger scanf
jeg har defineret følgende struct og array: struct konto{ char *name_player; int score; };
//definerer et array af typen konto struct konto player[2];
Når spillet starter vil jeg gerne have brugerne til at indtaste sine navne så jeg kan bruge dem i resten af spillet. Jeg bruger
printf("Indtast navn på spiller 1 og 2: "); scanf("%s", &player[0].name_player, &player[1].name_player); printf("Velkommen til spillet %s og %s, i er de fødte tabere!\n\n", &player[0].name_player, &player[1].name_player);
Men hvis jeg taster et langt navn først så bliver de to navne blandet sammen. hvis jeg taster jacobjacobjacob som første navn og mads som andet navn, så kommer den første til at hedde jacobjacomads og den næste mads!
Hvis jeg bare kalder den første for jacob og den næste ffor mads, så skrives navnene rigtigt nok første gang. Når jeg referer til navnene senere i programmet, så hedder jacob kun jaco
det virker nu. Det viste sig at fejlen var noget HELT andet som der havde indvirkning på dette! Der kan man se. Men mht. pointeren, kan du hjælpe med den? hvorfor den ikke virkede i starten?
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.