Visualizzazione dei risultati da 1 a 10 su 18

Visualizzazione discussione

  1. #2
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Ci sono un paio di preblemi:

    1.
    codice:
    for (int i=0;i<n;i++) {
        if (vet[i] == vet[i+1])
          cout <<"uguali";
        else cout <<"diversi";
     }
    Quando arrivi a i=n-1, vai a confrontare vet[i] con vet[n]. ma così vai fuori dall'array(i cui indici vanno da 0 a n-1)
    e ti va in crash il programma.

    2.
    codice:
    string *vet = new string [n];
    Se non ho capito male, vorresti fare un array di n puntatori a stringhe. Dovresti fare cosi:
    codice:
    string** vet = new string*[n]; // un puntatore a puntatori di string
    e poi nel leggere il file:

    codice:
    file.clear();
    file.seekg(0, ios::beg);
    for (int i=0;i<n;i++){
       vet[i] = new string(); // vet[i] è solo un puntatore, bisogna prima creare l'oggetto
       file >> *vet[i];
    }
    
    for (int i=0;i<n;i++)
        cout << *vet[i] << "\n";
    
    for (int i=0;i<n-1;i++){
       if (*vet[i] == *vet[i+1])
          cout <<"uguali";
       else cout <<"diversi";
    }
    Visto che hai dei puntatori, devi deferenziare il puntore (un saluto a MItaly )
    Ultima modifica di boots; 29-05-2016 a 18:15

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