hallo,
Ik ben als voorbereiding op het examen C een oefening aan het maken die een kaartspel simuleert. Het is de bedoeling dat de gebruiken een kaart aanduid en dat ik vervolgens random kaarten ga trekken uit de boek kaarten totdat ik de kaart gevonden heb.
Ik zit echter vast met het concateneren van een string met een integer waarde.
Ik heb al geprobeerd om gewoon :
te gebruiken maar dat werkt niet. Na even te zoeken op google vond ik enkele string functies maar deze willen het ook niet doen. Nu komt er de kleurwaarde op maar niet de waarde van de kaart. omdat die telkens een fout geeft op de strcat functie :
Voor de volledigheid kan je hier de volledige code vinden van het programma.
Ik weet dat ik even goed met een return value zou kunnen werken maar dat zou willen zeggen dat de opgave veranderd moet worden en dat is niet de bedoeling.
kaart.waarde is zoals je in de volledige source kan zien een integer waarde en daar wringt hem het schoentje volgens mij, ik heb ook al geprobeert om itoa() te gebruiken maar dat geeft ook errors
Ik ben als voorbereiding op het examen C een oefening aan het maken die een kaartspel simuleert. Het is de bedoeling dat de gebruiken een kaart aanduid en dat ik vervolgens random kaarten ga trekken uit de boek kaarten totdat ik de kaart gevonden heb.
Ik zit echter vast met het concateneren van een string met een integer waarde.
Ik heb al geprobeerd om gewoon :
code:
1
| str = "harten " + kaart.waarde; |
te gebruiken maar dat werkt niet. Na even te zoeken op google vond ik enkele string functies maar deze willen het ook niet doen. Nu komt er de kleurwaarde op maar niet de waarde van de kaart. omdat die telkens een fout geeft op de strcat functie :
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| void kaart_to_string(KAART kaart, char* str){
/*vul aan */
char s[15];
switch (kaart.kleur) {
case harten :
strcpy(str,"harten "); // + kaart.waarde;
break;
case schoppen :
strcpy(str,"schoppen ");// + kaart.waarde;
break;
case ruiten :
strcpy(str,"ruiten ");// + kaart.waarde;
break;
case klaveren :
strcpy(str,"klaveren ");// + kaart.waarde;
break;
}
} |
Voor de volledigheid kan je hier de volledige code vinden van het programma.
Ik weet dat ik even goed met een return value zou kunnen werken maar dat zou willen zeggen dat de opgave veranderd moet worden en dat is niet de bedoeling.
kaart.waarde is zoals je in de volledige source kan zien een integer waarde en daar wringt hem het schoentje volgens mij, ik heb ook al geprobeert om itoa() te gebruiken maar dat geeft ook errors