Double 2 string – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Double 2 string – C / C++ – Fórum – Programujte.comDouble 2 string – C / C++ – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Veronika0
Duch
22. 3. 2007   #1
-
0
-

jak prevest cislo na string (v nouzi beru i na char)? uz nad tim badam nejaky cas a nevim si moc rady. dik

Nahlásit jako SPAM
IP: ...–
Reklama
Reklama
Jura
~ Anonymní uživatel
634 příspěvků
22. 3. 2007   #2
-
0
-

V C++ pouzij proudy:



#include <cstdlib>
#include <iostream>
#include <sstream>
using namespace std;
int main(int argc, char *argv[])
{
double real = 1.063;
ostringstream os;
os << real;
string realAsString = os.str();
cout << realAsString << endl;
system("PAUSE");
return EXIT_SUCCESS;
}



V C pak sprintf..vice na http://cplusplus.com/reference/clibrary/cstdio/sprintf.html

Nahlásit jako SPAM
IP: ...–
Veronika0
Duch
22. 3. 2007   #3
-
0
-

ja jsem nakonec poslepovala divne toto:

double cena = 0;


// prevod double na char

char char_cena[_CVTBUFSIZE];

_gcvt (cena, 12, char_cena);

// prevod char na string

string string_cena = char_cena;


asi je lepsi to co pises ty ze?

Nahlásit jako SPAM
IP: ...–
Veronika0
Duch
22. 3. 2007   #4
-
0
-

no urcite je to lepsi :) funguje to krasne, takze dik moc

Nahlásit jako SPAM
IP: ...–
admiral
~ Anonymní uživatel
2 příspěvky
17. 10. 2010   #5
-
0
-

mam ten isty problem v c, pouzivam funkciu sprintf ale neviem kam to ukladat. Resp. na kolko mam alokovat ten vysledny string kam sa to bude ukladat ked neviem ake dlhe je to cislo double. Ako by ste to riesili?

Nahlásit jako SPAM
IP: 147.229.208.–
m->29+6
Super člen
17. 10. 2010   #6
-
0
-

Čo som pozrel rýchlo po nete tak používajú:

char s[32];

double d = 0.5;

sprintf(s, "%Lf", d);
Ale neviem nakoľko to je bezpečné. Každopádne, keď dáš ten buffer dlhý 128bytov tak by to malo bohato stačiť ;-)

Nahlásit jako SPAM
IP: 83.208.112.–
admiral
~ Anonymní uživatel
2 příspěvky
17. 10. 2010   #7
-
0
-

no hej ale tak to je take riesenie:) co ked just to bude o jeden znak vacsie a nezmesti sa to do toho pola?:)

Nahlásit jako SPAM
IP: 147.229.208.–
Anonymní uživatel
~ Anonymní uživatel
0 příspěvků
17. 10. 2010   #8
-
0
-

Použij funkci snprintf, která má parametr velikost bufferu.

  int snprintf(char *str, size_t size, const char *format, ...);

Nahlásit jako SPAM
IP: 86.61.140.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 74 hostů

Podobná vlákna

String na double — založil Grungy

String to hex ebo Byte()"string" — založil Roman Uherek

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý