int flipping :P

Status
Niet open voor verdere reacties.

stormstar3

Gebruiker
Lid geworden
3 apr 2009
Berichten
7
hey, ik heb een int keuze, met een switch. maar als ik voor keuze een letter invul begin heel het programma te flippen :P. wil het best string make, mar hoe kan ik een switch maken met een string?
 
hey, ik heb een int keuze, met een switch. maar als ik voor keuze een letter invul begin heel het programma te flippen :P. wil het best string make, mar hoe kan ik een switch maken met een string?

srry ik zal voortaan eerst nog iets langer nadenken voor ik iets post, ben er al weer uit :P
 
Dat kan niet. Een switch werkt alleen met numerieke waarden (of met enkele chars, die worden dan namelijk omgezet in de ASCII waarde). Maar hele (C-)strings gaat niet lukken.
 
Je kan met strstr() de ingevoerde string over een lap tekst scannen en een switch maken met de positie die strstr teruggeeft. bv:

Code:
char keuzes[] = " eentweedrievier";
char keuze[] = "drie";

switch( (int)(strstr(keuzes, keuze) - keuzes) ) {

case 1:   // een
case 4:   // twee
case 8:   // drie
case 12:  // vier
}

Deze methode werkt vrij snel als er veel mogelijkheden zijn. SQL servers doen dit bijvoorbeeld.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan