Problem bei Aufruf wird 0 angezeigt

03/19/2015 20:44 #AnymRolex*#1
Hallo Community,

Ich bin zurzeit ein Neueinsteiger in C++ und habe grad nen "Problem".

Da ich nicht lang reden möchte ist hier ein Preview:

Der Code:


Problem:
Wenn ich es mit << Auto << Automatisch aufrufen möchte steht da einfach eine 0.

Problem 2: Cin >> Ja; wird nicht angezeigt. Hier mal ein Bild:
03/19/2015 21:04 hazejp#2
Hi,

du verwendest für "Auto" den falschen Datentyp, nämlich int.
Problem: int kann nur ganze Zahlen abspeichern, also keine Strings, und wenn du etwas eingibst was nicht in eine ganze Zahl konvertiert werden kann, wird die Variable auf 0 gesetzt.
Deine Zweite Eingabe wird nicht angezeigt da sich noch von der ersten Eingabe ein line feed im Puffer befindet.
Die Variable "Geld" wird außerdem in deinem Programm nicht verwendet.

Besser wäre das Programm so:

Code:
#include <iostream>
#include <string>

using namespace std;

int main()
{
	string auto; // "string" statt "int" !
	char bestaetigung;

	cout << "Geben Sie eine Automarke ein: ";
	cin >> auto;

	cout << "Ihr eingegebenes Auto: " << auto << endl;
	cout << "Bestaetigung: ";
	cin.clear(); // WICHTIG: leert den Eingabepuffer
	cin >> bestaetigung;

	return 0;
}
03/19/2015 21:07 #AnymRolex*#3
Aso genau (facepalm) , aber wofür ist string nützlich? bzw. wann und für was verwendet man es?
03/19/2015 21:25 hazejp#4
string verwendest du immer dann wenn du Texte (kurze und lange, nur durch den Arbeitsspeicher begerenzt) speichern willst.
03/19/2015 22:29 bloodx#5
std::string auto wird wohl nicht klappen oder ?

std::string szAuto;

auto ist für C++ wohl Reserviert.

und vermeide von anfang an bitte using namespace std;
[Only registered and activated users can see links. Click Here To Register...]
03/19/2015 22:54 #AnymRolex*#6
Wenn ich using name space std rausnehme und std::cout schreibe enstehen Fehler bei using namespace std nicht ...

code:

Fehler: Error Auto string
03/19/2015 22:59 Requi#7
Quote:
Originally Posted by #AnymRolex* View Post
Wenn ich using name space std rausnehme und std::cout schreibe enstehen Fehler bei using namespace std nicht ...

code:

Fehler: Error Auto string
std::string vielleicht?
03/19/2015 23:14 snow#8
1) da du keinen namespace verwendest, musst du den mit angeben, also std::string
2) du wirst beim zweiten if Klammern brauchen. Du solltest stattdessen aber ein if / else verwenden. Und was ist, wenn Geld == 250000?
03/27/2015 18:48 MauGro#9
Wenn du ein string mit cin verwenden möchtest solltest du noch
#include<string> hinzuschreiben :)
Hatte heute damit ein problem als ich das nicht so hatte