C++ String in Funktion
Hallo Ich würde gern eine Funktion schreiben die mir einen string "wert" setzt. So hab ich es geschrieben (sieh unten). Leider funktioniert es nicht was mach ich falsch?
(Alles was ich in C++ gelernt habe habe ich selbst erlesen, daher bitte nicht haten wenn ich etwas sehr offensichtliches nicht verstehe. Ich versuch im Moment es mir selbst zu erlernen )
beim compilieren gibt es kein Problem, aber beim ausführen sieh Bild
Bin über jede konstruktive Hilfe sehr dankbar (=
(Alles was ich in C++ gelernt habe habe ich selbst erlesen, daher bitte nicht haten wenn ich etwas sehr offensichtliches nicht verstehe. Ich versuch im Moment es mir selbst zu erlernen )
#include <iostream>
using namespace std;
string feld(int x)
{
string y = 0;
switch(x)
{
case 1:
y = "Test";
break;
case 2:
y = "Test 2";
break;
default:
y = "Error";
break;
}
return y;
}
int main()
{
int x= 0;
string z = "0"; // Wurde nachträglich nach 1.Antowrt EDITIERT
cin >> x;
z = feld(x); // Wurde nachträglich nach 1.Antowrt EDITIERT
cout << z;
}
beim compilieren gibt es kein Problem, aber beim ausführen sieh Bild
Bin über jede konstruktive Hilfe sehr dankbar (=
Please also mark the comments that contributed to the solution of the article
Content-Key: 364768
Url: https://administrator.de/contentid/364768
Printed on: April 25, 2024 at 20:04 o'clock
7 Comments
Latest comment
Ansonsten die Fehlermeldung einfach bei Google eingeben:
_s_construct null not valid
_s_construct null not valid
Hallo,
Ich bin auch weit von dem Experten weg aber hier war mir so also ob...
Und deine Lösung war ?
Das Vergessen das Headerfile zu inkluden !?
~Arano
Ich bin auch weit von dem Experten weg aber hier war mir so also ob...
Und würde eine String-Variable auch explizit mit einem String initialisieren, also nicht z = 0 sondern z = "0".
"string
" ist hier ja KEIN Standard-Datentyp (char/int/bool) sondern eine Klasse, eine Klasse die intern char#s
verarbeitet.C++-Reference - String
default (1)
...
(1) empty string constructor (default constructor)
Constructs an empty string, with a length of zero characters.
Durch den Konstruktor der Klasse, muss (in diesem Fall) also keine Zeichenkette zur Initialisierung übergeben werden, weil die Klasse "sich selber" mit "leer" initialisieren kann.default (1)
string();
...
(1) empty string constructor (default constructor)
Constructs an empty string, with a length of zero characters.
// vim: set ts=4:
#include <iostream>
#include <string>
int main( void )
{
//std::string t("Administrator.de");
//std::string t = Administrator.de";
std::string t;
// t = "Administrator.de";
std::cout << t.length() << " " << t << << "." << std::endl;
// Ausgabe: "0 ."
return 0;
}
Und deine Lösung war ?
Das Vergessen das Headerfile zu inkluden !?
#include <string>
~Arano