Visualizzazione dei risultati da 1 a 5 su 5

Discussione: costanti in c

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    136

    costanti in c

    Salve,
    sono nuovo della programmazione in c e di questo forum, volevo chiedere un vostro parere in merito a questo problema che mi trovo ad affrontare!
    Sto scrivendo un programmino che mi converta il testo in codice morse e gli ho dato questa impostazione:
    acquisisco il file da tastiera e lo metto in un vettore,
    faccio un ciclo per controllare che ogni lettera sia doversa dal carattere di terminazione
    se è diversa faccio uno switch case e fin qui tutto bene!Il problema nasce quando dovrei sostituire al carattere il codice morse
    ad esempio se ho la lettera a mi trovo in questa situazione

    case 'a': (carattere='.-');break;

    ma ci sono diversi problemi! 1 Il compilatore dice che ci sono troppi caratteri come costante, 2 se anche risolvessi questo problema avrei cmq l'inconveniente di dover memorizzare .- in un variabile di tipo carattere e non va bene perchè provando mi memorizza solo l'ultimo carattere e quindi solo -

    Come mi consigliate di risolvere?
    Luigi

  2. #2
    Il secondo problema lo risolverei facendo un nuovo vettore..ma di stringhe, cosi memorizzi stringhe al posto di caratteri, e quindi anche ".-" "-." ecc...

    Il primo non ho capito bene cosa succede...

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    136
    Ciao e grazie per l'interessamento, vengo al dunque!
    Per quanto riguarda la soluzione da te segnalatami ci avevo già pensato ma ho trovato problemi nell'attuarlo!Inizialemente avevo questo codice,ma quando andavo a fare la stampa su file di c mi stampava solo -
    per far si che invece di una costante ci sia un vettore di stringhe come potrei fare?

    codice:
    printf("Digitare il testo da scrivere in morse(TERMINARE CON IL CARATTERE +)\n\t==>");
    scanf("%s",&testo);
    
    while ((c=testo[i])!='+')
    {
    switch (c){
               case '+': (c=EOF); break;
               case 'a': (c='.-'); break;
               case ...           
               }
               fprintf(fileout,"%c",c); 
              i++;
    }
    ciao e grazie!
    Luigi

  4. #4
    mmm... io premetto che programmo in Java e la sintacci col C è abbastanza simile... io in Java so che lo switch funziona solo con variabili di tipo char, int, .. e non String! ciao
    ti ricordi quando da piccoli andavamo in treno? io mettevo il culo fuori dal finestrino e tu la faccia e tutti ci chiedevano se eravamo gemelli...

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    136
    quando eseguo l'istruzione (c=testo[i])metto in c un solo char e poi su questo faccio lo switch...il problema è come stampare nel file una vettore di stringhe associato a questa lettera!
    cioè char a stringa associata .-

    Ciao e grazie!
    Luigi

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.