Visualizzazione dei risultati da 1 a 6 su 6

Discussione: [C] Array di char

  1. #1

    [C] Array di char

    Ciao ragazzi,

    Se provo ad assegnare una serie di caratteri ad un char ovviamente vengono memorizzati solo i primi 8 bit e quindi una solo lettera.

    So che in c in questi casi si usano array di char ma non riesco a trovare informazioni su internet.

    Quindi vi chiedo potete modificare questo codice in modo da integrare questa feature? e magari linkarmi una guida?

    codice:
    #include <stdio.h>
    
    
     main()
    {
    
    
      char nome;
    
    
      printf ("Ciao. Come Ti chiami? \n");
      scanf  ("%c",&nome);
      printf ("quindi il tuo nome è ");
      printf ("%c",nome);
      return 0;
    }

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    213
    Naturalmente deve essere ciò che tu hai menzionato, un array.
    Nel tuo caso non lo è poichè il char memorizza un solo carattere.
    Per farlo diventare array devi fare in questo modo:

    codice:
    #include <stdio.h>
    #define MAXCHAR 20
    
     int main()
    {
      char nome[MAXCHAR];
    
      printf ("Ciao. Come Ti chiami? \n");
      gets(nome);
      printf ("quindi il tuo nome è ");
      puts(nome);
      return 0;
    }
    Inoltre come puoi vedere è opportuno utilizzare gets e puts rispettivamente per memorizzare e mostrare in output il tuo array di char per correttezza sintattica.
    Queste informazioni puoi reperirle in internet facilmente o in qualsiasi manuale che sia tale poichè ci sarà sicuramente un capitolo dedicato agli array.
    Ultima modifica di Eduadie; 24-07-2014 a 20:08

  3. #3
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    non riesco a trovare informazioni su internet


    Veramente impossibile .... o non hai affatto cercato oppure non hai visto le migliaia di risposte possibili

    http://lmgtfy.com/?q=C+char+array
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  4. #4
    Quote Originariamente inviata da Eduadie Visualizza il messaggio
    Naturalmente deve essere ciò che tu hai menzionato, un array.
    Nel tuo caso non lo è poichè il char memorizza un solo carattere.
    Per farlo diventare array devi fare in questo modo:

    codice:
    #include <stdio.h>
    #define MAXCHAR 20
    
     int main()
    {
      char nome[MAXCHAR];
    
      printf ("Ciao. Come Ti chiami? \n");
      gets(nome);
      printf ("quindi il tuo nome è ");
      puts(nome);
      return 0;
    }
    Inoltre come puoi vedere è opportuno utilizzare gets e puts rispettivamente per memorizzare e mostrare in output il tuo array di char per correttezza sintattica.
    Queste informazioni puoi reperirle in internet facilmente o in qualsiasi manuale che sia tale poichè ci sarà sicuramente un capitolo dedicato agli array.
    Grazie mille!!

    @oregon ho cercato ma non ho trovato o ho skyppato le possibili soluzioni al mio problema

  5. #5
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Quote Originariamente inviata da Eduadie Visualizza il messaggio
    gets(nome);.
    gets è sconsigliata in quanto pericolosa, usa fgets al suo posto
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    213
    Quote Originariamente inviata da Alex'87 Visualizza il messaggio
    gets è sconsigliata in quanto pericolosa, usa fgets al suo posto
    Anche questo è giustissimo. E' da un pò che non uso C e qualche particolare potrebbe sfuggirmi

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.