Supportnet Computer
Planet of Tech

Supportnet / Forum / Anwendungen(Java,C++...)

'const char [11]' kann nicht in 'int' konvertiert werden





Frage

Hallo, Also, ich hab Visual C++ Konsolenprogramm Win32 gemacht. Da hab ich nach include, using, main, 1 Kommentar, 4 cout, eine Variablendeklaration char, cin und 3 Kommentaren dann 4 Variablen int deklariert und mit Zeichenketten gefüllt. (Hab auch mit char versucht, klappt auch nicht). Und beim kompilieren kommt dann die Meldung: error C2440: '=': 'const char [11]' kann nicht in 'int' konvertiert werden. wenn ich aber die 4 Variablen wegnehme, kommt die Meldung nicht! Hab schon alles versucht, klappt nicht. Es sind auch keine Tippfehler da. Woran liegt das? ich werd noch verrückt, bitte hilfe! mfg TByte

Antwort 1 von TByte

Achja, die meldung gibbet noch mit:
const char [7]
const char [17]
const char [12]
const char [11]
genau in der Reienfolge
mfg
TByte

Antwort 2 von Rangoo

Es wäre unglaublich viel einfacher, wenn du den Codeteil einfach zeigen würdest.
Offensichtlich versuchst du, in einen int eine Zeichenkette zu packen.

Antwort 3 von TByte

Mit int Zeichenkette geht ja; aber auch wenn nicht, ich habe das geliche auch mit char probiert, dann lautete die Meldung:
error C2440: '=': 'const char [11]' kann nicht in 'char' konvertiert werden.
das ist ja das Problem! ich will nix konvertieren, schon gar nicht etwas, was es schon ist! Hier der Codeteil:
#include <iostream>
using namespace std;

int main() {
	//OK, also hier is ja noch einfach
	cout << "Guten Tag und willkomen bei dem Latein-Grammatik-Handbuch!\n";
	cout << "Bitte geben Sie ein, was Sie wollen.\n";
	cout << "Sie koennen entscheiden:\n";
	cout << "Verben --- Zeitverhaeltniss --- Substantive --- Kasuslehre\n";
	char waswollensie;
	cin >> waswollensie;
    //So, jetzt wirds komplex; ich nehme an, "waswollensie" ist aussagekräftig...
    //OK, also hier die Auswahl-Variablen:
	int verben;
	verben = "Verben";
	int zeitver;
	zeitver = "Zeitverhaeltniss";
	int subs;
	subs = "Substantive";
	int kasus;
	kasus = "Kasuslehre";
	//Hier kommt jetzt die Abfrage
}

und dann eben noch:
#include <iostream>
using namespace std;

int main() {
//OK, also hier is ja noch einfach
cout << "Guten Tag und willkomen bei dem Latein-Grammatik-Handbuch!\n";
cout << "Bitte geben Sie ein, was Sie wollen.\n";
cout << "Sie koennen entscheiden:\n";
cout << "Verben --- Zeitverhaeltniss --- Substantive --- Kasuslehre\n";
char waswollensie;
cin >> waswollensie;
//So, jetzt wirds komplex; ich nehme an, "waswollensie" ist aussagekräftig...
//OK, also hier die Auswahl-Variablen:
char verben;
verben = "Verben";
char zeitver;
zeitver = "Zeitverhaeltniss";
char subs;
subs = "Substantive";
charkasus;
kasus = "Kasuslehre";
//Hier kommt jetzt die Abfrage
}


Ich weiß, man kann variablen gleich nach der deklaration definieren, aber ich dachte es liegt daran, also hab ich das so gemacht.
mfg
TByte

Antwort 4 von bored

1. Beispiel: Warum wilst du einen String (Zeichenkette) in eine integer-variable schreiben?

2. Beispiel: Warum willst du einen String (Zeichenkette) in eine Variable schreiben, die nur ein einzelnes Zeichen fassen kann?

Antwort 5 von bored

Aber bevor das hier wieder in einen 100 Reply-Thread ausartet:
C Strings
C++ Strings

Beide funktionieren in C++

Antwort 6 von TByte

Also mit string gehts nicht, char kann nur 1 Zeichen aufnehmen?
In altem C++ konnte man in int auch Strings speichern.
Und bei dem Datentyp string meckert der rum dass des nicht gibt.
mfg
TByte

Antwort 7 von bored

Wie wär's, wenn du zur Abwechslung mal die exakte Meldung postest.
Und dazu deinen Code.

Antwort 8 von Rangoo

Das muss ein sehr altes C++ gewesen sein.
Ja, ein char kann nur ein Zeichen aufnehmen.
Wenn Strings nicht existieren, musst du entweder mit char-Arrays arbeiten oder die entsprechende Header-Datei (vermutlich cstring) importieren.

Antwort 9 von TByte

zur abwechselung habe ich mal die genaue meldung und den code gepostet.
vielne dank, die bibliothek hieß string, ohne c,
also #include <string>
mfg
TByte

Antwort 10 von bored

Hier mal so, wie es aussehen könnte:

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

int main() {
	//OK, also hier is ja noch einfach
	cout << "Guten Tag und willkomen bei dem Latein-Grammatik-Handbuch!\n";
	cout << "Bitte geben Sie ein, was Sie wollen.\n";
	cout << "Sie koennen entscheiden:\n";
	cout << "Verben --- Zeitverhaeltniss --- Substantive --- Kasuslehre\n";
	string waswollensie;
	cin >> waswollensie;
    //So, jetzt wirds komplex; ich nehme an, "waswollensie" ist aussagekräftig...
    //OK, also hier die Auswahl-Variablen:
	string verben = "Verben";
	string zeitver = "Zeitverhaeltniss";
	string subs = "Substantive";
	string kasus = "Kasuslehre";
	//Hier kommt jetzt die Abfrage
	cout << verben << " verben\n" << zeitver << " zeitver\n" << subs << " subs\n" << kasus << " kasus\n\n" << "eingetippt: " << waswollensie << "\n";
	return 0;
}


Lässt sich ganz prima kompillieren...

g++ tbyte.cpp -o tbyte && \
chmod +x tbyte && \
./tbyte


...und spuckt Folgendes aus:

Guten Tag und willkomen bei dem Latein-Grammatik-Handbuch!
Bitte geben Sie ein, was Sie wollen.
Sie koennen entscheiden:
Verben --- Zeitverhaeltniss --- Substantive --- Kasuslehre
wassollichwohlwollen?
Verben verben
Zeitverhaeltniss zeitver
Substantive subs
Kasuslehre kasus

eingetippt: wassollichwohlwollen?


Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: