Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

jurassico

Oq é 'void'? Pra que serve e quando usa-lo?

Recommended Posts

 

 

The void type comprises an empty set of values; it is an incomplete type that cannot be completed


 

incomplete types (types that describe objects but lack information needed to determine their sizes)


Basicamente, é um tipo utilizado quando não se tem informação do tipo concreto.
Veja a função malloc:

 

7.20.3.3 The malloc function
Synopsis
#include <stdlib.h>

void *malloc(size_t size);



O retorno da função é um endereço, mas como é um void *, não se tem informação de alinhamento (é int? char?).

Exemplos de utilização aparecem na própria linguagem: http://en.cppreference.com/w/c/algorithm/qsort
No caso da função qsort como os ponteiros são genéricos, é possível utilizá-la p/ int *, char *, struct *... Basta criar a função de comparação que ela recebe como argumento.

Outro uso é na criação de tipos de dados abstratos. Ao invés de criar trocentos arquivos de uma lista ligada p/ cada tipo que existir na face da terra, basta criar a struct contendo um void *. No programa vc faz o malloc com o cast adequado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

void é um valor nulo (não receber nenhum argumento), utiliza-se para funções que não tem retorno.

 

Exemplo de função sem retorno:

 

void vMostraMensagem()

{

std::cout <<"Ola Treinamento da Funcao void (sem retorno) <<endl;

}

Segue um exemplo de função com retorno para diferenciar da sem retorno:

 

Exemplo de função com retorno:

 

int iIdentificador()

{

return Id; //Id é uma variável que já foi atribuída um valor, nessa função está retornando seu resultado.

 

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.