IALweb Homepage
Forum Home Forum Home > Programmazione > Programmazione > C/C++ - VISUAL C++
  New Posts New Posts RSS Feed - formattazione numeri
  FAQ FAQ  Forum Search   Events   Register Register  Login Login


REGISTRATEVI su IALWeb forum!

Topic Closedformattazione numeri

 Post Reply Post Reply
Author
Message
teo76 View Drop Down
Nuovo Utente
Nuovo Utente
Avatar

Joined: 29/Ago/2005
Location: Italy
Status: Offline
Points: 8
Direct Link To This Post Topic: formattazione numeri
    Posted: 29/Ago/2005 at 22:07

Ho poca esperienza nel Visual C++, e non riesco a formattare i numeri come voglio. Precisamente come posso quando inserisco dei valori double o float ad indicare il punto ( . ) come separatore delle migliaia e la virgola ( , ) come separatore dei decimali. Esempio per scrivere 1.000,00

Sapete anche come poter limitare i decimali dopo la virgola, se per esempio volessi averne due per variabili che possano contenere valori in euro...

Utilizzo solo le MFC per creare dei programmi. 

Back to Top
Sponsored Links


Back to Top
MrHyde View Drop Down
Veterano
Veterano
Avatar

Joined: 03/Lug/2003
Location: ITALIA
Status: Offline
Points: 1197
Direct Link To This Post Posted: 30/Ago/2005 at 09:24

La formattazione può essere applicata solo alla visualizzazione. In fase di scrittura del codice devi attenerti alle regole del VC++. Ad esempio, come separatore decimale devi usare quelle che il tuo VC++ riconosce come valido, mentre i decimali contenuti nel risultato sono dettati dal tipo di dato usato (float/double).

Detto questo, puoi però, formattare come meglio credi il tuo valore quando devi visualizzarlo, ad esempio in una texto altro.

Per fare ciò acquisisci il valore in una variabile stringa ed applichi la fomattazione

CString tmp;

float myValue = 0.0;

tmp.Format("%.3f",myValue);

In questo caso limiti a 3 i valori decimali consentiti.

http://www.mrhyde.altervista.org/myblog.html
http://www.mrhyde.altervista.org
Back to Top
teo76 View Drop Down
Nuovo Utente
Nuovo Utente
Avatar

Joined: 29/Ago/2005
Location: Italy
Status: Offline
Points: 8
Direct Link To This Post Posted: 30/Ago/2005 at 22:17

Ringrazio MrHyde per la risposta, in effetti ora riesco a visualizzare il mio valore con le cifre decimali che voglio.

Ho però il problema di voler visualizzare le due cifre anche durante l'inserimento. dalla tua risposta mi sembra che non posso farlo???

Premetto che uso solo le MFC per programmare, mi servirebbe sapere come poter digitare da tastiera il valore double 1.525,25 (per esempio) e il VC++ mi bloccasse se volessi proseguire nell'inserimento. Infatti quando creo un controllo (Edit Control) e collego una variabile double non riesco a limitare il numero delle cifre da inserire: vorrei che si fermasse alle due cifre decimali ed invece posso scrivere valori all'infinito 1525.2564555..... vorrei che si fermasse al 1525.25

Si può fare?? con le stringhe sono riuscito

Grazie

Back to Top
MrHyde View Drop Down
Veterano
Veterano
Avatar

Joined: 03/Lug/2003
Location: ITALIA
Status: Offline
Points: 1197
Direct Link To This Post Posted: 31/Ago/2005 at 09:06

Credo che debba provare a settare le limitazione di valori innanzitutto al momento della dichiarazione della variabili mambro e poi potresti applicare la formattazione man mano che la Edit cambia. (evento change/ update). La giusta via dovrebbe essere questa.

http://www.mrhyde.altervista.org/myblog.html
http://www.mrhyde.altervista.org
Back to Top
 Post Reply Post Reply
  Share Topic   

Forum Jump Forum Permissions View Drop Down

Forum Software by Web Wiz Forums® version 10.17
Copyright ©2001-2013 Web Wiz Ltd.

This page was generated in 0,063 seconds.