Du bist nicht eingeloggt.

Login

Pass

Registrieren

Community
Szene & News
Locations
Impressum

Forum / Bits und Bytes

Probleme C++; Text.c_str();

<<< zurück   -1- -2- -3- vorwärts >>>  
Pratsch - 31
Champion (offline)

Dabei seit 07.2009
2821 Beiträge

Geschrieben am: 20.07.2011 um 18:36 Uhr
Zuletzt editiert am: 20.07.2011 um 18:37 Uhr

cGesucht ist ein Array.
Daher kannst du nicht dem Datentyp ein Wert zuweisen sondern du brauchst ein Zeiger.

awa

download - 33
Halbprofi (offline)

Dabei seit 07.2006
181 Beiträge

Geschrieben am: 20.07.2011 um 18:36 Uhr

Zitat:

wchar_t hat nur damit zu tun ob ein Programm als Unicode compiliet wird, nichts damit unter welcher Windowsversion es läuft.

Dann versuch ein Unicode compiliertes Programm unter Windows 95 - 98 auszuführen.
Natürlich ohne den Patch den man von der Webseite laden kann ;)

http://ouned.de

BlackRock - 48
Experte (offline)

Dabei seit 02.2007
1148 Beiträge
Geschrieben am: 20.07.2011 um 18:38 Uhr

Zitat von download:

Zitat:

wchar_t hat nur damit zu tun ob ein Programm als Unicode compiliet wird, nichts damit unter welcher Windowsversion es läuft.

Dann versuch ein Unicode compiliertes Programm unter Windows 95 - 98 auszuführen.
Natürlich ohne den Patch den man von der Webseite laden kann ;)

Was hat das mit der Behauptung zu tun, dass ein Programm das nicht mit wchar_t geschrieben ist nur unter Win95 liefe?

"It is more important that innocence be protected than it is that guilt be punished." (John Adams)

Pratsch - 31
Champion (offline)

Dabei seit 07.2009
2821 Beiträge

Geschrieben am: 20.07.2011 um 18:39 Uhr
Zuletzt editiert am: 20.07.2011 um 18:39 Uhr

//[C++ Fehler] Unit1.cpp(28): E2277 L-Wert erwartet

Dieser Fehler sagt nichts anderes, dass du dem nichts zuweisen kannst. Was auch logisch ist.

awa

Pratsch - 31
Champion (offline)

Dabei seit 07.2009
2821 Beiträge

Geschrieben am: 20.07.2011 um 18:41 Uhr

Du willst ein Wort mit 15 Zeichen in ein CharArray?
Richtig verstanden?

awa

download - 33
Halbprofi (offline)

Dabei seit 07.2006
181 Beiträge

Geschrieben am: 20.07.2011 um 18:42 Uhr

Zitat von BlackRock:

Was hat das mit der Behauptung zu tun, dass ein Programm das nicht mit wchar_t geschrieben ist nur unter Win95 liefe?

Wir reden aneinander vorbei. Ich meinte damit dass man das Programm eben nicht so einfach unter Win95 zum laufen bringt wenn es unicode nutzt. Ich wollte nur kritisieren dass er ASCII nutzt ;)

http://ouned.de

Pratsch - 31
Champion (offline)

Dabei seit 07.2009
2821 Beiträge

Geschrieben am: 20.07.2011 um 18:43 Uhr

b2t

awa

BlackRock - 48
Experte (offline)

Dabei seit 02.2007
1148 Beiträge
Geschrieben am: 20.07.2011 um 18:44 Uhr

Zitat von download:

Wir reden aneinander vorbei. Ich meinte damit dass man das Programm eben nicht so einfach unter Win95 zum laufen bringt wenn es unicode nutzt. Ich wollte nur kritisieren dass er ASCII nutzt ;)

Das ist ja nicht gesagt, es könnte ja auch UTF-8 sein. Wir wissen ja gar nicht, was für APIs er benutzt.

"It is more important that innocence be protected than it is that guilt be punished." (John Adams)

download - 33
Halbprofi (offline)

Dabei seit 07.2006
181 Beiträge

Geschrieben am: 20.07.2011 um 18:50 Uhr

Zitat von BlackRock:

Das ist ja nicht gesagt, es könnte ja auch UTF-8 sein. Wir wissen ja gar nicht, was für APIs er benutzt.

char cGesucht[15];
Naja davon geh dann eben aus^^

http://ouned.de

BlackRock - 48
Experte (offline)

Dabei seit 02.2007
1148 Beiträge
Geschrieben am: 20.07.2011 um 18:50 Uhr

Zitat von Pratsch:

cGesucht ist ein Array.
Daher kannst du nicht dem Datentyp ein Wert zuweisen sondern du brauchst ein Zeiger.

Wenn du eine Seite zurückgehst, ich habe ja schon eine mögliche Lösung mit strncpy() gepostet.

"It is more important that innocence be protected than it is that guilt be punished." (John Adams)

jann93 - 32
Halbprofi (offline)

Dabei seit 09.2007
127 Beiträge

Geschrieben am: 20.07.2011 um 18:50 Uhr

Zitat von BlackRock:

Zitat von jann93:

Zitat von BlackRock:

c_str() gibt einen char* zurück. Du kannst einem char[] kein char* zuweisen. Du musst ::strncpy() verwenden.


Wie muss dies dann mit meinen namen(cGesucht; edGesucht) aussehen?

::strncpy(cGesucht, edGesucht->Text.c_str(), 14);
cGesucht[15] = '\0';


Wunderbar hat geklappt.
Vielen Vielen Dank.

Wenn ich dich nochmal belästigen durfte: Was bedeutet genau diese 14?

X-Faktor-Stories oder FB-Pinnwandeinträge sind keine günstigen Quellen um eine These zu untermauern!

Pratsch - 31
Champion (offline)

Dabei seit 07.2009
2821 Beiträge

Geschrieben am: 20.07.2011 um 18:51 Uhr

Zitat von BlackRock:

Zitat von Pratsch:

cGesucht ist ein Array.
Daher kannst du nicht dem Datentyp ein Wert zuweisen sondern du brauchst ein Zeiger.

Wenn du eine Seite zurückgehst, ich habe ja schon eine mögliche Lösung mit strncpy() gepostet.


I know.

awa

download - 33
Halbprofi (offline)

Dabei seit 07.2006
181 Beiträge

Geschrieben am: 20.07.2011 um 18:52 Uhr

Warum willst du das eigentlich in einen Array kopieren der 15 stellen hat? 16 Zeichen in deinem Textfeld und dein Programm schmiert ab.
Welche Klasse hat denn edGesucht?

http://ouned.de

Pratsch - 31
Champion (offline)

Dabei seit 07.2009
2821 Beiträge

Geschrieben am: 20.07.2011 um 18:53 Uhr

Zitat von jann93:

Wenn ich dich nochmal belästigen durfte: Was bedeutet genau diese 14?


Klick...

awa

BlackRock - 48
Experte (offline)

Dabei seit 02.2007
1148 Beiträge
Geschrieben am: 20.07.2011 um 18:53 Uhr

Zitat von download:

char cGesucht[15];
Naja davon geh dann eben aus^^

In einem char array kann alles mögliche stecken, EBCDIC, Shift-JIS, UTF-7, ...

"It is more important that innocence be protected than it is that guilt be punished." (John Adams)

<<< zurück
 
-1- -2- -3- vorwärts >>>
 

Forum / Bits und Bytes

(c) 1999 - 2026 team-ulm.de - all rights reserved - hosted by ibTEC Team-Ulm

- Presse - Blog - Historie - Partner - Nutzungsbedingungen - Datenschutzerklärung - Jugendschutz -