Konflikte header



  • Wenn ich folgendes vereinbare:

    #include <iostream>
    #include <iomanip>
    using namespace std;

    void main () {
    double d = 0.0123456789;
    cout << setprecision(10) << fixed << d << '\n'; //10 stellen
    cout << setw(6) << setfill('0') << setprecision(2) << fixed << d << '\n'; //2 stellen
    }

    funktioniert es.
    Füge ich jedoch z.B #include<fstream.h> (zwecks Datei ein und auslesen) hinzu kommt es zu fehlermeldungen
    a) woran liegt das? b) wir kann ich es beheben?
    c) wie lese ich daten aus wenn ich <fstream> verwende möchte?
    (bisher: ofstream output2("ku.txt");
    for (zaehler3=0;zaehler3<nvar;zaehler3++){
    for (zaehler2=0;zaehler2<nvar;zaehler2++){
    output2<<Ku[zaehler3][zaehler2]<<"\t";
    if(zaehler2==(nvar-1)) output2<<endl;}}
    output2.close();)



  • Mit #include <fstream> müßte es eigentlich klappen. fstream.h ist IMHO deprecated.

    Und btw: Es müßte eigentlich int main () heißen!



  • ein weiteres problem: <<setprecision(30) <<Ku[1][1];

    setprecision scheint nicht auf arrays zu wirken....wo kann der Fehler liegen?



  • Eisvogel schrieb:

    ein weiteres problem: <<setprecision(30) <<Ku[1][1];

    setprecision scheint nicht auf arrays zu wirken....

    Mumpitz!

    Was kommt raus, was hättest du erwartet, und was ist Ku[1][1]?



  • Versuch es mal in dem du Ku[][] castest.
    z.B.

    cout<<setprecision(30) <<(double)Ku[1][1];
    


  • danke es klappt,
    was versteht man aber unter castest?



  • Du sagst, als was eine Variable/Rückgabewert gewertet werden soll.

    double i=16.66;
    cout<<(int)i<<endl;
    

    gibt i als int aus, also 16



  • bitte nicht den (alten) C-Cast verwenden, Standard C++ bietet

    int blub = 10;
    
    static_cast<double>(blub); //der sicherste
    reinterpret_cast<double>(blub); //der brutale
    const_cast<double>(blub); //in dem fall der unnütze
    dynamic_cast //hier nicht zu gebrauchen
    und den funktionsstyle cast
    double(blub); //kann aber zu namensschwierigkeiten kommen- lieber static_cast
    

    ich denke, in dem fall reicht static_cast, aber es kommt darauf an, welcher typ sich gecastet werden soll.


Anmelden zum Antworten