Форум программистов, компьютерный форум CyberForum.ru

Неправильный вывод информации о дисках - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Функция, возвращающая указатель http://www.cyberforum.ru/cpp-beginners/thread1039432.html
Здравствуйте. Пускай есть класс Some_type и массив такого класса. Можно ли функцией Some_type* some_name (some_type) заполнять массив, если ею возвращается указатель на объект созданный с помощью new? И мой код: Pizza db; for (int i {}; i < count; ++i) { *(db+1) = get_item();
C++ Неравенство Решить неравенство ax^2 + bx + c <= 0, a\neq 0/ Как я понимаю, то я расписываю по формулам , а как сосчитать знак? (ну можно x1 - 1, x1+1, x2+1) но вот что дальше делать....хелп http://www.cyberforum.ru/cpp-beginners/thread1039430.html
C++ Определить, попадает ли точка с координатами {x,y} в закрашенные области с заданными параметрами
помоги пожалуйста. нужно написать код на С++ для данного условия. Радиус окружности и стороны прямоугольника Желательно код с комментариями.
C++ Виды new & delete
Тестовый вопрос, но я как-то не сильно в нем разобрался. В гугле искал. Буду благодарен за помощь. Вот, собственно, вопросы (2), выбрать все правильные варианты. 1. Какие в С++ есть виды new? a. new b. new() c. new 2. Какие в С++ есть виды delete? a. delete
C++ ГСЧ с нормальным законом распределения http://www.cyberforum.ru/cpp-beginners/thread1039422.html
ребят, помогите написать программу которая будет генерировать выборку с нормальным законом распределения, срочно нужно на конференцию по мат статистике.... Добавлено через 6 минут ну или просто связанную с выборкой, и ГСЧ отчаялся очень уже....
C++ Сгенерировать матрицу, в которой элементы нечётных строк нулевые помогите пожалуйста написать программу на С++,в которой :1) все элементы матрицы не чётных строк нулевые 2)все элементы чётных строк нулевые подробнее

Показать сообщение отдельно
LookLand
0 / 0 / 0
Регистрация: 06.09.2010
Сообщений: 45

Неправильный вывод информации о дисках - C++

12.12.2013, 22:59. Просмотров 423. Ответов 1
Метки (Все метки)

Функция выдает не верную информацию. Вместо свободного места выводится размер диска.
Все как будто съезжает вниз на один пункт. Не пойму где ошибка. Единственное заметил , что без
преобразования в int64 все работает нормально , но при этом выводится неправильный размер диска.


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
char* get_disk_information(char *disk)
{//функция которая возвращает информацию о выбранном диске.
// char *disk - диск о котором требуется вывести информацию
    char
        k[100], 
        name[128];
    DWORD 
        number, 
        length, 
        flags;
    DWORD 
         SectPerClust,
         BytesPerSect,
         FreeClusters,
         TotalClusters,
         FreeSpace;
     unsigned __int64   i64TotalBytes;
 
 
    sprintf(k,"%s\\", disk);    
    sprintf(name,"");
    char total[200];
    GetVolumeInformation( k, name, 128, &number, &length, &flags, NULL, 0 );//Берем информацию об имени диска
    GetDiskFreeSpace(disk,&SectPerClust,&BytesPerSect,&FreeClusters,&TotalClusters);
        
          i64TotalBytes = (__int64)TotalClusters * SectPerClust * BytesPerSect; 
          i64TotalBytes = i64TotalBytes/1024/1024/1024;
          
    char info[1000];
    FreeSpace  = FreeClusters * SectPerClust / 1024; 
    FreeSpace= FreeSpace * BytesPerSect / 1024 / 1024; 
    //Строка информации
    sprintf(info,(
        "\nДиск: %s\nИмя: %s\nРазмер диска: %l\nСвободное место: %u ГБ\nСекторов в кластере: %u\nСвободных кластеров: %u\nОбщее число кластеров: %u\nДлина кластера: %u"
    
        ), k,name, i64TotalBytes,FreeSpace,SectPerClust,FreeClusters,TotalClusters,BytesPerSect);
 
    return info;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru