myGully.com Boerse.SH - BOERSE.AM - BOERSE.IO - BOERSE.IM Boerse.BZ .TO Nachfolger
Zurück   myGully.com > Computer & Technik > Programmierung
Seite neu laden

Wo ist der Fehler?

Willkommen

myGully

Links

Forum

 
Antwort
 
Themen-Optionen Ansicht
Alt 12.02.11, 12:04   #1
cjs
Anfänger
 
Registriert seit: Nov 2010
Beiträge: 8
Bedankt: 1
cjs ist noch neu hier! | 0 Respekt Punkte
Standard

Was sind denn "normale Konstanten"?
Schau Dir mal meine Lösung an ( [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ] ) die effective wohl auch übernommen hat. Dort stehen die Namen ja jeweils in " " fest im Code. Meinst Du das mit "normalen Konstanten"? Weil dieser Code müsste -meiner bescheidenen Meinung nach- absolut problemlos durch ein switch-case-Konstrukt ersetzt werden können.

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

using namespace std;


void main()
{
	string Namen; 
	cout <<"Welchen Namen möchten Sie benutzen?:\nbomk\nbong\npstar\n\n";
	cin >> Namen;

	switch (Namen)
	{
		case "bomk":
			cout << "Low";
			break;
		case "bong":
			cout << "Test";
			break;
		case "pstar":
			cout << "Bla";
			break;
	}
	system("pause");
}
Aber auch dieser Code ist jetzt nicht getestet, weshalb ich (insbesondere Syntax-) Fehler nicht ausschließe ;-)
cjs ist offline   Mit Zitat antworten
Alt 12.02.11, 17:32   #2
germgerm
bla
 
Registriert seit: Mar 2010
Beiträge: 312
Bedankt: 302
germgerm ist noch neu hier! | 0 Respekt Punkte
Standard

Zitat:
Zitat von cjs Beitrag anzeigen
Weil dieser Code müsste -meiner bescheidenen Meinung nach- absolut problemlos durch ein switch-case-Konstrukt ersetzt werden können.
Das funktioniert vielleicht in C#, aber nicht in C++.

"bomk", "bong", "pstar" sind in C keine normalen Konstanten. Vereinfacht ausgedrückt sind das C-Strings, auf die ein Pointer zeigt.
germgerm ist offline   Mit Zitat antworten
Alt 02.03.11, 21:56   #3
isaak
Anfänger
 
Registriert seit: Jul 2009
Beiträge: 3
Bedankt: 2
isaak ist noch neu hier! | 0 Respekt Punkte
Standard

jepp, wird nicht mit switch funktionieren.

switch funktioniert nur bei datentypen, die auf nen integer abgebildet werden können.
isaak ist offline   Mit Zitat antworten
Antwort


Forumregeln
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren

BB code is An
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:37 Uhr.


Sitemap

().