viele kleine doofe Fragen und kurze Antworten



  • Hallo, werde sicher noch häufigern einige Fragen haben, die trivial und schnell zu beantworten sind.
    Würde die dann immer hier reinstellen.

    Wie gebe ich ein Array vollständig zurück (am Ende einer Funtkion)?

    return NameXY[i][j];
    (wobei i und j Abmessungen des Arrays sind, also z.b. NameXY[800][600])



  • gar nicht, denn dein Array wurde in der Funktion auf dem Stack erstellt und nach verlassen der Funktion ist es auch nicht mehr existent, also entweder mit new erstellen und den Zeiger zurück geben, was aber so seine tücken hat, oder besser vor Aufruf der Funktion erstellen und die Refferenz an die Funktion übergeben, dann kanns auch auf dem Stack liegen



  • ok danke.
    Also einfach außerhalb definieren und dann muss auch nichts in das return?!
    Und ich kann trotzdem drauf zugreifen, auch wenn es nich zu den Eingangsparametern der Funktion gehört?

    Nächste Frage, wieso kann ich hier nicht 39,8 oder 39.8 eingeben???

    cout << endl <<  "Bitte Temperatur eingeben:" << endl << endl;
    int bildtemp;
    cin >> bildtemp;
    

    Und hier kein ganzes Wort? z.b. "bilderbuch"

    cout << endl <<  "Bitte den Namen des Bildes eingeben:" << endl << endl;
    char bildname;
    cin >> bildname;
    


  • Grunert schrieb:

    ok danke.
    Also einfach außerhalb definieren und dann muss auch nichts in das return?!
    Und ich kann trotzdem drauf zugreifen, auch wenn es nich zu den Eingangsparametern der Funktion gehört?

    Na returnen solltest du vielleicht die Anzahl der Einträge im Array oder ob die Funktion alles richtig gemacht hat oder nen Fehler erzeugt hat als Beispiel

    Grunert schrieb:

    Nächste Frage, wieso kann ich hier nicht 39,8 oder 39.8 eingeben???

    cout << endl <<  "Bitte Temperatur eingeben:" << endl << endl;
    int bildtemp;
    cin >> bildtemp;
    

    Weil int nur ein ganzzahligen Wert Speichern kann. Für Gleitkomma gibt es double oder float

    Grunert schrieb:

    Und hier kein ganzes Wort? z.b. "bilderbuch"

    cout << endl <<  "Bitte den Namen des Bildes eingeben:" << endl << endl;
    char bildname;
    cin >> bildname;
    

    in einem char kannst du nur ein zeichen speichern, wenn du eine Zeichenkette speichern willst, brauchst du ein char-array oder nimmst string oder CString

    Aber mal eine andere Frage, das sind alles Grundlagenfragen, die eigentlich in jedem Buch für Anfänger beschrieben werden. Ich hoffe jetzt nicht das du über das Forum lernen willst und jetzt wegen jeder Kleinigkeit die in jedem Buch stehen hier Fragen stellst.



  • Wenn man den Wald vor lauter Bäumen nicht mehr sieht, fragt man sowas ^^
    Und dazu kommt, dass ich die letzten 4Jahre nur Visual Basic programmiert habe, was solche ganzen Kleinigkeiten automatisch mach 😉

    Danke nochmal!

    (bin schon die ganze Zeit am Suchen und unsere Uni C++ Bücher sind für die Mülltonne. Als nächstes schaue ich mir aus meinen alten Programmen nochmal das mit dem Speicherplatz allokieren an)


  • Mod

    Grunert schrieb:

    Und dazu kommt, dass ich die letzten 4Jahre nur Visual Basic programmiert habe, was solche ganzen Kleinigkeiten automatisch mach 😉

    C++ macht das auch ganz automatisch wenn man z.B. std::vector verwendet...
    Und C++ macht noch viel mehr ganz automatisch als VB!


Anmelden zum Antworten