Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Cast String in Double

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
05.04.2006, 22:06 Uhr
sternchen_1709



Hallo,

ich habe ein Problem mit dem casten eines const char*-Wertes zurück in eine double-Ziffer.
Ich wäre euch so dankbar wenn ihr mir einen kleinen Tip geben könnt. Der Hinweg war einfach getan mit sprintf(). Ich habe einen String mit einer Zahl belegt. Num will ich zurück aber ohne das erste Zeichen "_" d.h. ich möchte die Variable id als double mit dem wert 244 zurückhaben.
Hat jemand eine Idee??

Mein Problem:


C++:
const char *name = "_244";
double  id;



Grüße
Sternchen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
05.04.2006, 22:22 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


Du kannst einen String auch nicht in ein double casten. Casten beudeutet im Prinzip nur das du dem Compiler sagst das das der entsprechende Typ ist und er sich keine "Gedanken" darüber machen soll. Da double und String (also eine Zeichenkette) sich aber grundlegend unterscheiden ist ein cast nicht Möglich.

Du kannst die Zeichenkette jedoch mit atof in eine Zahl umwandeln.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
05.04.2006, 22:22 Uhr
Pler
Einer von Vielen
(Operator)



Code:
id = atof( &name[1] );


oder so ähnlich.

Nachtrag:
Zu langsam!

Dieser Post wurde am 05.04.2006 um 22:22 Uhr von Pler editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
05.04.2006, 22:22 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


naja so ginge das:


C++:
const char *name = "_244";
int id = atoi(&name[1]);



liefert dir 244 als integer.

wenn du natürlich


C++:
const char *name = "_244.44";
double id = atof(&name[1]);



liefert dir 244.44 als double


Bearbeitung:

verdammt, zu lahm

+1


--
class God : public ChuckNorris { };

Dieser Post wurde am 05.04.2006 um 22:22 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
05.04.2006, 22:23 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


lol schnellster

PS:

Dieser Post wurde am 05.04.2006 um 22:23 Uhr von Guybrush Threepwood editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
05.04.2006, 23:01 Uhr
sternchen_1709



Hey danke !!!
Toll, daß ihr mir so schnell geholfen habt.

Grüße,
Sternchen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: