- Kod: Zaznacz cały
int GB = 10;
int MB = 1023;
int KB = 300;
int B = 800;
Chciałbym wyświetlić w labelu łączną ilość bajtów tego dysku (na podstawie danych zmiennych).
Próbowałem czegoś takiego:
- Kod: Zaznacz cały
unsigned __int64 __fastcall TFrm_Taby::GetSimulateSize()
{
unsigned __int64 Size = 0;
int GB = 3;
int MB = 1023;
int KB = 1023;
int B = 1023;
Size = GB * 1024*1024*1024; // bo 1 GB = (1024*1024*1024) bajtów
Size += MB * 1024*1024;
Size += KB * 1024;
Size += B;
return Size;
}
ale to działa do zakresu 4 GB a dalej już nie ponieważ typ unsigned __int64 nie potrafi przechować większych liczb (niż 4 GB w bajtach) ;/
Więc jak wyświetlić większe liczby niż 64 bitowe? Albo jak to rozwiązać innym sposobem?




