Pagina 2 di 4 primaprima 1 2 3 4 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 32
  1. #11
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446
    allora
    Incominciamo dal cout

    il cout è utilizzato per dare l'output,e da qnt ho visto questo l'hai capito,ma oltre la parola cout devi assolutamente usare bene il suo operatore che NON è >> ma è <<

    se scrivi cout >> "ciao mondo";
    il compilatore ti darà un errore,perchè >> è l'operatore di cin(usato per l'input) e NON per cout.
    diversamente se scrivi cout << "ciamo mondo";
    il compilatore nn darà alcun errore.

    Eccoti il codice per stampare a video un array:

    #include <iostream.h>

    int main()
    {
    char array[]={"ciao"};
    /*un errore che fanno in molti è mettere tra le parentesi [] il numero delle lettere
    contenute nell'elemento dell'array,sbajato!se ad esempio l'elemento è ciao NON bisogna mettere 4 tra le []
    bensì 5 questo perchè anche se nn è indicato in questo esempio esiste il carattere speciale che indica
    la fine dell'array char (ovvero \0)
    */

    cout << array << endl;/*ordino al programma di stampare a video l'array tramite cout,e tramite << endl
    gli ordino di riportare l'output del programma alla seconda riga.senza quello il programma darebbe:
    ciaoPress any key to continue,mentre con << endl il programma darà:
    ciao
    Press any key to continue
    */
    return 0;
    }

  2. #12
    Inanzi tutto grazie deella spiegazione Le cose su cin e cout le sapevo ma con tutte ste prove non mi ero accorto di quell'errore ...

    il mio problema si è risolto in parte(forse perchè ho una concezione sbagliata di array?)

    allora se io scrivo...

    array[]={"ciao"};

    tutto bene (ma questo array io penso che contenga solo un indice cioè Array[0])

    ora io voglio creare un array con tante stringhe di caratteri cosicche da avere
    Array[0]="ciao"
    Array[1]="ciao1"
    Array[2]="ciao2"
    Array[3]="ciao3"
    ..
    Array[10]="ciao4"
    e cosi via

    ma se dichiaro l'array cosi
    Array[]={"ciao","ciao1","ciao2","ciao3","ciao4","ciao5" ,}

    mi da errore di conversione


    Perchè?

    in PHP questo ero accettato.

    in questo modo

    $colori = array('Bianco e chiaro', 'Nero e scuro', 'Giallo e chiaro', 'Verde e bello', 'Rosso e triste');
    e per stampare a video faccio echo $colori[2] e lui stampa la parola Giallo e chiaro.

    ora in C++ come si fa a creare un Array con tante frasi?


    scusate ancora la mia ignoranza.
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  3. #13
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446
    ciao barman.Ho capito cosa vorresti fare, dato il fatto che sn nuovo del c++ posso dirti che neanche io ho trovato una soluzione al tuo problema.
    Riesco a creare un array di caratteri,ma non di parole....

  4. #14
    Utente di HTML.it L'avatar di DydBoy
    Registrato dal
    Jul 2005
    Messaggi
    165
    In C/C++ una stringa è già a sua volta un'array composto dalla lunghezza della stringa stessa + 1.

    Ad esempio la stringa "Ciao" è memorizzata in un array di questo tipo :

    char Parola[] = {"ciao"}

    Ora avremo Parola[0] = 'c',Parola[1] = 'i'...ecc..ecc...
    e troviamo a Parola[4] il simbolo '\0' che è il terminatore di stringhe.

    Quello che vuoi fare tu è quindi un array di stringhè il che significa avere un array di puntatori ad altri array (cioè le stringhe di caratteri veri e propri).

    In questo modo lo si realizza (in maniera statica):

    codice:
    char elencoParole[NUMPAROLE][LUNGHEZZAPAROLA] = {{"parola1"},{"parola2"}..ecc}
    Spero di esserti stato d'aiuto.Ciao

  5. #15
    si mi hai fatto capire molto bene e ti ringrazio

    Ma se io lo volessi fare dinamico...?

    cioè se io non so quente dimensioni posso avere e quanti indici.

    se volessi creare un array che si modifica a seconda di quante parole metto?

    Es/

    $colori = array('Bianco e chiaro', 'Nero e scuro', 'Giallo e chiaro', 'Verde e bello', 'Rosso e triste');
    e per stampare a video faccio echo $colori[2] e lui stampa la parola Giallo e chiaro.

    se io aggiungo il nome di un altro colore allora l'array si aggiorna automaticamente.
    questo array ha 4 indici ma se aggiungo un altra parola lui passa a 5 indici senza problemi.

    in C++ come si fa?


    Grazie della pazienza
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  6. #16
    Utente di HTML.it L'avatar di DydBoy
    Registrato dal
    Jul 2005
    Messaggi
    165
    Hai due scelte :

    1. Ti implementi le funzioni per l'allocazione dinamica del tuo elenco di parole con le varie chiamate alle malloc e alle realloc.

    2. Utilizzi i vettori stringa (oggetti c++ che implementano già tutte queste funzioni che chiedi).


    Qui trovi qualcosa in merito.

    http://www.msoe.edu/eecs/cese/resources/stl/string.htm

  7. #17
    ok per ora mi studio bene questi semplici poi con calma e più esperienza mi lancio su quelli dinamici.


    Ancora un piccolo dubbio

    [CODE]
    // Esempio Di Array stampato a video
    codice:
    # include <iostream>
    
    
    using namespace std;
    
      int main () 
      {
          
          char ProvArray[4][]= {{"ciao"},{"come"},{"va"},{"mariolin"}};     // [numeroparole ][langhezza parole]
          
    	  int i , y;
    		for (i=0; i<10; i++) 
             { 
                    for  (y=0; y<10; y++)
    		
                       cout << ProvArray[i][y];
              }
    		 return 0;
       }
    questo perchè non funziona..

    mi sa che devo dichiararli uno ad uno visto che la kubghezza varia

    Per dichiarali a mano va bene cosi?

    codice:
    char Array[4][10];
    
    Array[0][4]="ciao";
    Array[1][4] ="come";
    Array[2][2] ="va";
    Array[3][8] ="mariolin";
    
    
     int i , y;
    		for (i=0; i<10; i++) 
             { 
                    for  (y=0; y<10; y++)
    		
                       cout << Array[i][y];
              }
    		 return 0;
       }
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  8. #18
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446
    non và perchè devi settare anche il numero dei caratteri.
    Nel tuo esempio:


    char ProvArray[4][1000]= {{"ciao"},{"come"},{"va"},{"mariolin"}};

  9. #19
    Originariamente inviato da energie
    ec
    non ho capito la risposta !!!!!!!
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  10. #20
    Ma scusa nel mio esempio

    char Array[4][10];

    Array[0][4]="ciao";
    Array[1][4] ="come";
    Array[2][2] ="va";
    Array[3][8] ="mariolin";

    il num di caratteri l'ho settato

    ma lo stesso mi dice invalid conversion....

    cmq riprovo come dici tu magari funziona ...
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

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 © 2026 vBulletin Solutions, Inc. All rights reserved.