C++ Array in Liste speichern



  • Hallo,
    Ich bin gerade dabei eine Datei die in ein array in einem struct, gespeichert wird. Dieses Array soll jetzt in eine verkettete Liste gespeichert werden doch bei mir kommt immer ein Fehler

    struct AktienStammDaten
    {
        char name[50];
        float marktkapitalisierung;
    };
    
    void copyInArray() {
        const int n = 132;
        struct AktienStammDaten daten[n];
        char temp[60];
        char temp2[60];
        FILE* datei = fopen("C:\\temp\\Marktkapitalisierung.tsv", "r");
        if (NULL == datei)
        {
            perror("ERROR");
            
        }
        int i = 0;
        double test = 0;
        while (EOF != fscanf(datei, "%s %s \n", temp, temp2) && i < n)
        {
            strcpy_s(daten[i].name, temp);
            printf("%d ", i);
            printf("%s     ", daten[i].name);
            daten[i].marktkapitalisierung = atof(temp2);
            printf("%lf \n", daten[i].marktkapitalisierung);
            i++;
        }
        printf_s("Test: %s %lf\n", daten[1].name, daten[1].marktkapitalisierung);
    
    
        std::list<char[50]> list;
        i = 0;
        while (i != 132)
        {
            list.push_front(daten[i].name);
            i++;
        }
        for (auto i = list.cbegin();i != list.cend(); i++)
        {
            std::cout << std::endl;
        }
    }
    

  • Mod

    printf, char-Arrays, atof, FILE, fopen, strcpy ist alles C. Das mischt sich nicht mit C++-Mitteln, wie list, cout, und so weiter (d.h. alles wo std vor steht). Du musst dich entscheiden, ob du C oder C++ machst.

    Außerdem muss dieser Mischmasch ja irgendwo hergekommen sein. Wie lernst du? Da läuft etwas massiv falsch, wenn du zwei Sprachen als Mischmasch lernst und nicht weißt, dass das zwei Sprachen gleichzeitig sind.



  • @Simon3614 Der Compiler sagt doch, was ihm nicht passt.

    Er sagt auch durch Warnungen - die man unbedingt einschalten sollte - wo er Probleme sieht.

    „Ich bekomme immer Fehler“ ist auch keine ausreichende Fehlerbeschreibung.


  • Gesperrt

    Dieser Beitrag wurde gelöscht!

Anmelden zum Antworten