Ir ao conteúdo
  • Cadastre-se
Pablo Magalhães Alves

Programa que leia e mostre o espaço livre em disco

Recommended Posts

Olá

 

Gostaria de saber como escrever um programa em C que dê suporte ao título que dei.

 

Um programa simples no qual o usuário entraria com a partição desejada que ele quisesse verificar e retornava o espaço livre nesta unidade.

 

Muito Obrigado!
Forte Abraço!

Pablo Alves

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Pablo, tal se fazer isto, você pode usar WinAPI, mais especificamente a função GetDiskFreeSpaceEx, eu fiz a "base" pra você, veja:

#include <iostream>#include <windows.h>using namespace std;int main(){    unsigned __int64 TotalBytes, FreeBytes;    GetDiskFreeSpaceEx ("C:\\",                       NULL,                       (PULARGE_INTEGER)&TotalBytes,                       (PULARGE_INTEGER)&FreeBytes);    float fLivre = FreeBytes/(float)1073741824;    float fTotal = TotalBytes/(float)1073741824;    cout << "Espaco Livre(GB) : " << fLivre << endl;    cout << "Espaco Total(GB) : " << fTotal << endl;    return 0;}

Quanto aquele número estranho : 1073741824, trata-se da conversão de Bytes para GigaBytes, 1GB = 1073741824 bytes. É necessário pois a função retorna o espaço em Bytes.

 

Lembrando que fiz o programa funcionar corretamente aqui, você vai ter que edita-lo e adapta-lo a sua necessidade.

 

Apenas para complementar, por estranho que pareça o meu resultado não foi uma float mas sim um int, talvez seja algo errado que fiz na conversão, caso percebam tal erro, favor avisar.

 

Abraços.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@DolbyCpp
 
você recebeu um INT porque você dividiu um INT por outro INT:

float fLivre = FreeBytes/1073741824;

 
o q você tem que fazer para receber um float desda divisão é isto:

float fLivre = FreeBytes/(float)1073741824;
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×