Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    62

    [C] Problema con costrutto Switch

    Ciao a tutti,
    questo e' un pezzo di codice del mio programma :

    codice:
        switch (c) {
            case 3:
                char *i;
                altre istruzioni ;
        }
    il compilatore (GCC) mi ritorna sempre l' errore :

    505 main.c syntax error before "char"

    Dopo alcune prove ho scoperto che mettendo qualunque cosa che non sia una dichiarazione di variabile come prima istruzione del case il programma viene correttamente compilato...

    codice:
        switch (c) {
            case 3:
                printf("useless instruction !");
                char *i;
                altre istruzioni ;
        }

    Ora mi chiedo... e' una cosa voluta oppure e' un bug del compilatore ??

    Grazie.


  2. #2
    Prova così:
    codice:
    switch(c){
    
       case 3:
          do {
    
             char *i;
    
             /*Altre istruzioni*/
          
          } while(0);
    
    }
    oppure:
    codice:
    switch(c){
    
       case 3:
          {
    
             char *i;
    
             /*Altre istruzioni*/
          
          };
    
    }

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    62
    This one rocks ! :
    codice:
    switch(c){
    
       case 3:
          {
    
             char *i;
    
             /*Altre istruzioni*/
          
          };
    
    }

    xo pz che bug

    Grazie.

  4. #4

    Re: [C] Problema con costrutto Switch

    Ora mi chiedo... e' una cosa voluta oppure e' un bug del compilatore ??
    lo prevedono i linguaggi C e C++.
    ciao
    sergio

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Originariamente inviato da mico90
    xo pz che bug
    Puoi tradurre?

    PS: nei forum è consuetudine (indicata anche nel regolamento) scrivere il testo in chiaro, utilizzando la lingua italiana, in modo che tutti possano capire, visto che il limite di caratteri per post è di 13000 caratteri (non 160 come gli SMS).


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    62
    Originariamente inviato da LeleFT
    Puoi tradurre?

    PS: nei forum è consuetudine (indicata anche nel regolamento) scrivere il testo in chiaro, utilizzando la lingua italiana, in modo che tutti possano capire, visto che il limite di caratteri per post è di 13000 caratteri (non 160 come gli SMS).


    Ciao.
    hehe scusa pensavo fosse comprensibile, comunque per esteso la frase sarebbe : "pero' porcozio che bug !"; naturalmente in quel momento pensavo fosse un bug...

    lo prevedono i linguaggi C e C++.
    ciao
    sergio
    Grazie della risposta




Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.