Forum: PC-Programmierung CVI switch case mit char anstatt int


von SeppLe (Gast)


Lesenswert?

Hallo,
ich möchte in CVI einen Menu Ring auswerten. Es gibt 3 verschieden 
Auswahlmöglichkeiten: I²C, SPI und OWI. Da ich anschießend einen String 
an den µC schicken muss, dachte ich mir die 3 Möglichkeiten nicht mit 
1,2,3 sondern I, S, O zu nennen. Allerdings scheint das nicht zu 
klappen....Deswegen meine Frage: Muss ich die Buchstaben zuerst nach 
ASCII umwandeln um sie auszuwerten?

Hier noch der Code:
1
/********************************************************************************************/
2
/*Protocol Selection                                                                */
3
/********************************************************************************************/
4
int CVICALLBACK Prot (int panel, int control, int event,
5
    void *callbackData, int eventData1, int eventData2)
6
{
7
  char sSelect;
8
  switch (event)
9
    {
10
    case EVENT_VAL_CHANGED:
11
       GetCtrlVal (panel, PANEL_RING, &sSelect);
12
       switch (sSelect){ 
13
         case "I": //mach was    
14
             break;
15
         case "S": //mach was
16
             break;
17
         case "O": //mach was
18
             break;
19
         }
20
      break;
21
    }
22
  return 0;
23
}

von SeppLe (Gast)


Lesenswert?

achja Fehler vom Compiler:

           3 errors,1 warning

  148, 25  Case label must be a constant integer expression.
  150, 25  Case label must be a constant integer expression.
  152, 25  Case label must be a constant integer expression.
  154, 13  Warning: Switch statement with no cases.

von (prx) A. K. (prx)


Lesenswert?

'I'

von SeppLe (Gast)


Lesenswert?

Herzlichen Dank!!Schönen (Feier-)Abend

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.