Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Core Ultra 7 270K Plus e Core Ultra 7 250K Plus: Intel cerca il riscatto ma ci riesce in parte
Core Ultra 7 270K Plus e Core Ultra 7 250K Plus: Intel cerca il riscatto ma ci riesce in parte
Abbiamo provato le nuove CPU Intel Core Ultra 7 270K Plus e Core Ultra 7 250K Plus: più core e ottimizzazioni al funzionamento interno migliorano le prestazioni, anche in virtù di prezzi annunciati interessanti. A questo si aggiungono nuove ottimizzazioni software. Purtroppo, a fronte di prestazioni di calcolo elevate, il quadro rimane incerto nel gaming, dove l'andamento rimane altalenante. Infine, rimane il problema della piattaforma a fine vita.
PC Specialist Lafité 14 AI AMD: assemblato come vuoi tu
PC Specialist Lafité 14 AI AMD: assemblato come vuoi tu
Il modello "build to order" di PCSpecialist permette di selezionare una struttura base per un sistema, personalizzandolo in base alle specifiche esigenze con una notevole flessibilità di scelta tra i componenti. Il modello Lafité 14 AI AMD è un classico notebook clamshell compatto e potente, capace di assicurare una elevata autonomia di funzionamento anche lontano dalla presa di corrente
Recensione Nothing Phone 4(a): sempre iconico ma ora più concreto
Recensione Nothing Phone 4(a): sempre iconico ma ora più concreto
Nothing con il suo nuovo Phone 4(a) conferma la sua identità visiva puntando su una costruzione che nobilita il policarbonato. La trasparenza resta l'elemento cardine, arricchita da una simmetria interna curata nei minimi dettagli. Il sistema Glyph si evolve, riducendosi nelle dimensioni ma aumentando l'utilità quotidiana grazie a nuove funzioni software integrate e notifiche visive. Ecco tutti i dettagli nella recensione completa
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 14-04-2009, 10:22   #1
trallallero
Senior Member
 
L'Avatar di trallallero
 
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
[C/C++] float to char[] - locale

No, non sono alle prime armi cercando la funzione che converte da float a char[]

Il problema è questo:

Codice:
	double Freq = GetFrequency( m_Channel );
	sprintf( sFreq, "%06.03lf", Freq );
l'output di sFreq è:
Quote:
30,000
E questo perchè lavoro in Germania quindi la sprintf prende il locale ... locale e mette la virgola al posto del punto.

Come posso risolvere senza troppi giri strani ?
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z Mb - Win Eight SP (1 > yours) 16 Valve
trallallero è offline   Rispondi citando il messaggio o parte di esso
Old 14-04-2009, 10:41   #2
trallallero
Senior Member
 
L'Avatar di trallallero
 
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
Vabbè, ho risolto così:

Codice:
	double Freq = GetFrequency( m_Channel );
	stringstream sstr;
	sstr << Freq;

Però se qualcuno ha alternative ben vengano, 'sta storia del locale con sprintf mi è nuova.
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z Mb - Win Eight SP (1 > yours) 16 Valve
trallallero è offline   Rispondi citando il messaggio o parte di esso
Old 14-04-2009, 10:43   #3
slartibartfast
Senior Member
 
L'Avatar di slartibartfast
 
Iscritto dal: May 2005
Messaggi: 564
Che compilatore usi?
Ho provato sia con LCC che con GCC e mi da il separatore correttamente con il punto.
Al limite puoi, con una funzione tipo strchr, a sostituire la virgola con il punto successivamente.
slartibartfast è offline   Rispondi citando il messaggio o parte di esso
Old 14-04-2009, 11:08   #4
trallallero
Senior Member
 
L'Avatar di trallallero
 
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
Quote:
Originariamente inviato da slartibartfast Guarda i messaggi
Che compilatore usi?
Ho provato sia con LCC che con GCC e mi da il separatore correttamente con il punto.
Al limite puoi, con una funzione tipo strchr, a sostituire la virgola con il punto successivamente.
Si ma tu non hai un server tedesco perchè il problema è quello, il locale.
Infatti il bug è sorto adesso che stiamo andando in beta ed installando i programmi nelle varie macchine ed un server è in crucco.

Comunque ho risolto in un altro modo: all'inizio del programma setto il locale con
Codice:
setlocale( LC_ALL , "C" );
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z Mb - Win Eight SP (1 > yours) 16 Valve
trallallero è offline   Rispondi citando il messaggio o parte di esso
Old 14-04-2009, 11:13   #5
slartibartfast
Senior Member
 
L'Avatar di slartibartfast
 
Iscritto dal: May 2005
Messaggi: 564
Quote:
Originariamente inviato da trallallero Guarda i messaggi
Si ma tu non hai un server tedesco perchè il problema è quello, il locale.
Infatti il bug è sorto adesso che stiamo andando in beta ed installando i programmi nelle varie macchine ed un server è in crucco.

Comunque ho risolto in un altro modo: all'inizio del programma setto il locale con
Codice:
setlocale( LC_ALL , "C" );
Che c'entra, anche il locale italiano prevede la virgola come quello tedesco.
slartibartfast è offline   Rispondi citando il messaggio o parte di esso
Old 14-04-2009, 11:15   #6
trallallero
Senior Member
 
L'Avatar di trallallero
 
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
Quote:
Originariamente inviato da slartibartfast Guarda i messaggi
Che c'entra, anche il locale italiano prevede la virgola come quello tedesco.
Non sapevo ... sei sicuro ?

edit: comunque uso gcc
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z Mb - Win Eight SP (1 > yours) 16 Valve
trallallero è offline   Rispondi citando il messaggio o parte di esso
Old 14-04-2009, 12:10   #7
BrutPitt
Senior Member
 
L'Avatar di BrutPitt
 
Iscritto dal: Mar 2009
Città: Bologna
Messaggi: 1174
Confermo che il separatore italiano e' la "," ... pero' non vorrei dire fesserie, ma mi sembra di ricordare che il default startup per un'applicazione C sia gia':

setlocale(LC_ALL, "C");

(a meno che qualcuno non chiami altrove, dentro al programma, una setlocale)

Per cui magari controlla e vedi se sia il caso di fare un salvataggio e ripristino piu' o meno cosi':


char *loc = setlocale(LC_NUMERIC, NULL);
setlocale(LC_NUMERIC, "C");

//stampi

setlocale(LC_NUMERIC, loc);


(se devi agire semplicemente sul separatore numerico: LC_NUMERIC
cosi' gli altri settaggi, LC_MONETARY, LC_TIME... etc... rimangono quelli settati da sistema.)


O puoi anche settare a livello di envionment LC_NUMERIC="C" e poi chiamare:

setlocale(LC_NUMERIC, "");
BrutPitt è offline   Rispondi citando il messaggio o parte di esso
Old 14-04-2009, 14:06   #8
trallallero
Senior Member
 
L'Avatar di trallallero
 
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
Quote:
Originariamente inviato da BrutPitt Guarda i messaggi
Confermo che il separatore italiano e' la "," ... pero' non vorrei dire fesserie, ma mi sembra di ricordare che il default startup per un'applicazione C sia gia':

setlocale(LC_ALL, "C");

(a meno che qualcuno non chiami altrove, dentro al programma, una setlocale)

Per cui magari controlla e vedi se sia il caso di fare un salvataggio e ripristino piu' o meno cosi':


char *loc = setlocale(LC_NUMERIC, NULL);
setlocale(LC_NUMERIC, "C");

//stampi

setlocale(LC_NUMERIC, loc);


(se devi agire semplicemente sul separatore numerico: LC_NUMERIC
cosi' gli altri settaggi, LC_MONETARY, LC_TIME... etc... rimangono quelli settati da sistema.)


O puoi anche settare a livello di envionment LC_NUMERIC="C" e poi chiamare:

setlocale(LC_NUMERIC, "");
Ma non serve ripristinare perchè la setlocale agisce solo a livello di programma.
Comunque grazie delle info
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z Mb - Win Eight SP (1 > yours) 16 Valve
trallallero è offline   Rispondi citando il messaggio o parte di esso
Old 14-04-2009, 14:37   #9
BrutPitt
Senior Member
 
L'Avatar di BrutPitt
 
Iscritto dal: Mar 2009
Città: Bologna
Messaggi: 1174
Si, ovvio... infatti parlavo a livello di programma.

Non conoscendo la "grandezza" del tuo programma e se ci lavoravi solo tu o se era un lavoro a piu' mani.

BrutPitt è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Core Ultra 7 270K Plus e Core Ultra 7 250K Plus: Intel cerca il riscatto ma ci riesce in parte Core Ultra 7 270K Plus e Core Ultra 7 250K Plus:...
PC Specialist Lafité 14 AI AMD: assemblato come vuoi tu PC Specialist Lafité 14 AI AMD: assemblat...
Recensione Nothing Phone 4(a): sempre iconico ma ora più concreto Recensione Nothing Phone 4(a): sempre iconico ma...
Corsair Vanguard Air 99 Wireless: non si era mai vista una tastiera gaming così professionale Corsair Vanguard Air 99 Wireless: non si era mai...
Ecovacs DEEBOT T90 PRO OMNI: ora il rullo di lavaggio è ampio Ecovacs DEEBOT T90 PRO OMNI: ora il rullo di lav...
Rapporto Clusit 2026: finanza e infrastr...
Gli stessi sali che solidificano il tofu...
Il conflitto in Medio Oriente minaccia l...
OnlyFans, scomparso il proprietario Leon...
Le migliori offerte Amazon da leggere in...
Recensioni su Trustpilot non affidabili,...
Il CISPE denuncia Broadcom all'antitrust...
Il cyberattacco che negli Usa ha trasfor...
AI Grid Intelligent Orchestration, l'inf...
Roborock Qrevo CURV 2 Flow X: tecnologia...
Quanto viaggia il modem di iPhone Air? I...
300 GB di memoria RAM per le future gene...
One-Tap Share: come funziona la condivis...
Xiaomi Redmi Note 15 Pro scende ancora d...
4 robot rasaerba crollati di prezzo, tut...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 17:10.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v