C++Talk.NET Forum Index C++Talk.NET
C++ language newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Typumwandlungen

 
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ (German)
View previous topic :: View next topic  
Author Message
Christian Rick
Guest





PostPosted: Tue Jul 18, 2006 12:38 am    Post subject: Typumwandlungen Reply with quote



Hallo,

ich suche eine Seite die spezielle Möglichkeiten zu Typumwandlung
verschiedener Typen bekannt gibt.

Dabei meine ich jetzt nicht Umwandlungen von Char zu Int oder Int zu Char
o.ae. , sondern z.B. von Const Char* in String, oder speziellere
Umwandlungen.

Bis auf die Typumwandlungen hatte ich bisher keine Probleme mit C++.

Ich danke euch schon mal im Vorraus für Antworten.

Gruß
Christian Rick

--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
Back to top
Thomas Maeder
Guest





PostPosted: Tue Jul 18, 2006 1:29 am    Post subject: Re: Typumwandlungen Reply with quote



Christian Rick <christian.rick (AT) gmx (DOT) de> writes:



Quote:
ich suche eine Seite die spezielle Möglichkeiten zu Typumwandlung

verschiedener Typen bekannt gibt.



Dabei meine ich jetzt nicht Umwandlungen von Char zu Int oder Int zu

Char o.ae. , sondern z.B. von Const Char* in String, oder

speziellere Umwandlungen.



Bis auf die Typumwandlungen hatte ich bisher keine Probleme mit C++.



Und was für Probleme hast Du mit Typumwandlungen?



--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
Back to top
Christian Rick
Guest





PostPosted: Tue Jul 18, 2006 1:52 am    Post subject: Re: Typumwandlungen Reply with quote



Thomas Maeder wrote:

Quote:


Christian Rick <christian.rick (AT) gmx (DOT) de> writes:



ich suche eine Seite die spezielle Möglichkeiten zu Typumwandlung

verschiedener Typen bekannt gibt.



Dabei meine ich jetzt nicht Umwandlungen von Char zu Int oder Int zu

Char o.ae. , sondern z.B. von Const Char* in String, oder

speziellere Umwandlungen.



Bis auf die Typumwandlungen hatte ich bisher keine Probleme mit C++.



Und was für Probleme hast Du mit Typumwandlungen?




Ich würde gerne wissen, wie ich bspw. Const Char in Char umwandeln kann, und
wieder zurück.

Das mit der Anfrage betreffend solcher Seiten lag in der Idee, dass ich dann
weniger Arbeit hätte mit dem zusammensuchen solcher Typenumwandlungen.

--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
Back to top
Christian Rick
Guest





PostPosted: Tue Jul 18, 2006 2:07 am    Post subject: Re: Typumwandlungen Reply with quote

Christian Rick wrote:

Quote:
Hallo,

ich suche eine Seite die spezielle Möglichkeiten zu Typumwandlung
verschiedener Typen bekannt gibt.

Dabei meine ich jetzt nicht Umwandlungen von Char zu Int oder Int zu Char
o.ae. , sondern z.B. von Const Char* in String, oder speziellere
Umwandlungen.

Bis auf die Typumwandlungen hatte ich bisher keine Probleme mit C++.

Ich danke euch schon mal im Vorraus für Antworten.

Gruß
Christian Rick


Und von einer std::string Variablen in eine Const Char bzw. Char Variable
wäre interessant... Char -> Const Char und zurück hab ich nun gelöst.

Gruß

--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
Back to top
Norbert Melzer
Guest





PostPosted: Tue Jul 18, 2006 2:14 am    Post subject: Re: Typumwandlungen Reply with quote

Christian Rick schrieb:

Quote:
Ich würde gerne wissen, wie ich bspw. Const Char in Char umwandeln kann, und
wieder zurück.

Du kannst const char in ein char kopieren und mit der Kopie
weiterarbeiten, aber eine Umwandlung ist da nicht möglich...

Stell Dir vor Du hast eine behauene Marmorplatte (const char) da kannst
auch kein Blatt Papier draus machen (char) sondern höchstens Foto von
machen und darauf dann Notizen, OK ich gebe zu der Vergleich hinkt,
sollte die Problematik aber klar machen.

--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
Back to top
Andreas Huennebeck
Guest





PostPosted: Tue Jul 18, 2006 9:11 am    Post subject: Re: Typumwandlungen Reply with quote

Christian Rick wrote:

Quote:
Und von einer std::string Variablen in eine Const Char

std::string s;
....
const char* cp = s.c_str(); // wenn s verschwindet, ist cp nicht mehr gültig

Quote:
bzw. Char Variable wäre interessant...

char* cp = strdup(s.c_str());
if (0 == cp) error("not enough memory");

Tschau
Andreas
--
Andreas Hünnebeck | email: acmh (AT) gmx (DOT) de
----- privat ---- | www : http://www.huennebeck-online.de
Fax/Anrufbeantworter: 0721/151-284301
GPG-Key: http://www.huennebeck-online.de/public_keys/andreas.asc
PGP-Key: http://www.huennebeck-online.de/public_keys/pgp_andreas.asc


--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
Back to top
Rolf Magnus
Guest





PostPosted: Tue Jul 18, 2006 1:48 pm    Post subject: Re: Typumwandlungen Reply with quote

Andreas Huennebeck wrote:

Quote:
Christian Rick wrote:

Und von einer std::string Variablen in eine Const Char

std::string s;
...
const char* cp = s.c_str(); // wenn s verschwindet, ist cp nicht mehr
gültig

Auch wenn s geändert wird.

Quote:
bzw. Char Variable wäre interessant...

char* cp = strdup(s.c_str());
if (0 == cp) error("not enough memory");

strdup ist allerdings keine Standardfunktion. Außerdem darf man nicht
vergessen, den String später mit free (und keinesfalls mit delete[]) wieder
freizugeben.


--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
Back to top
Tibor Pausz
Guest





PostPosted: Tue Jul 18, 2006 2:07 pm    Post subject: Re: Typumwandlungen Reply with quote

Andreas Huennebeck <acmh (AT) gmx (DOT) de> wrote:

Quote:
std::string s;
...
const char* cp = s.c_str(); // wenn s verschwindet, ist cp nicht mehr gültig

Nein, wenn man irgend was mit s macht ist cp nicht mehr gültig!

--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
Back to top
kanze
Guest





PostPosted: Tue Jul 18, 2006 4:55 pm    Post subject: Re: Typumwandlungen Reply with quote

Christian Rick wrote:
Quote:
Thomas Maeder wrote:
Christian Rick <christian.rick (AT) gmx (DOT) de> writes:

ich suche eine Seite die spezielle Möglichkeiten zu Typumwandlung
verschiedener Typen bekannt gibt.

Dabei meine ich jetzt nicht Umwandlungen von Char zu Int oder Int zu
Char o.ae. , sondern z.B. von Const Char* in String, oder
speziellere Umwandlungen.

Bis auf die Typumwandlungen hatte ich bisher keine Probleme mit C++.

Und was für Probleme hast Du mit Typumwandlungen?

Ich würde gerne wissen, wie ich bspw. Const Char in Char
umwandeln kann, und wieder zurück.

Verstehst du schon lvalue und rvalue? Das ist in diesem Fall
bedeutend; bei einer rvalue von nicht Klassen Typ haben die
äußersten const keine Bedeutung. Das heißt, dass wenn dein
»const char« (man schreibt aber lieber »char const«) in rvalue
umgewandelt wird, verhält es genau wie ein char. Zum Beispiel:

char const c1 = 'x' ;
char c2 ;
c2 = c1 ;

Die Zuweisung verlangt eine rvalue als rechten Operand. Also
wird den lvalue c1 in rvalue von Typ char umgewandelt.

Wenn du nicht mit den Begriffen lvalue und rvalue vertraut bist,
würde ich vorschlagen, dass du damit anfängst.

Historisch betrachtet heißt das l in lvalue »left«; es war ein
Wert, der auf der linke Seite eine Zuweisung vorkommen könnte.
Heute würde ich ehe als eine Verkürzung von »lokalisierbar«
denken---es ist ein Wert, der an eine feste Stelle im Speicher
liegt. (Leider finde ich nichts entsprechendes für das r in
rvalue. Das historisch »right« bedeutet. Auch: die Regeln sind
bei Klassentypen etwas komplizierte, da auch rvalue gelegentlich
eine Speicheradresse für den this-Zeiger brauchen.) Also zum
Beispeil oben sind die Ausdrucke »c1« und »c2« lvalue; Ausdrucke
wie aber »'x'«, »42« und »c1 + 1« nicht, weil die keine feste
Speicheradresse haben.

--
James Kanze GABI Software
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34


--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
Back to top
kanze
Guest





PostPosted: Tue Jul 18, 2006 5:13 pm    Post subject: Re: Typumwandlungen Reply with quote

Christian Rick wrote:

Quote:
Und von einer std::string Variablen in eine Const Char bzw.
Char Variable wäre interessant... Char -> Const Char und
zurück hab ich nun gelöst.

Grundsätzlich geht's nicht, eine std::string kann beliebig viele
Zeichen enthalten, eine char Variable aber nur eine.

Mann kann die einzelnen Zeichen einer std::string mittels []
angreifen, also:

std::string s( "Hello" ) ;
char c = s[ 0 ] ; // jetzt ist c == 'H'

Nach der Art deiner Fragen fürchte ich aber, dass du etwas
grundlegender verpasst hast.

--
James Kanze GABI Software
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34


--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
Back to top
Display posts from previous:   
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ (German) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.