Ir ao conteúdo
  • Cadastre-se

Algumas dúvidas sobre programação...


geraldolandim

Posts recomendados

Bem, eu tenho algumas dúvidas sobre programação e gostaria que vocês me tirassem-nas, se possível. São elas:

Qual a diferença entre getche(), getchar() e getch()?

Qual a diferença entre macros e funções?

Porque usar uma no lugar da outra?

Qual a difernça entre calloc() e malloc?

E por fim:

Quais são as conversões não permitidas no casting?

Obrigado, desde já...

Link para o comentário
Compartilhar em outros sites

macro:

#define SOMA(x,y) ((x)+(y))

Funciona como todo define. Toda vez que o preprocessador encontrar SOMA(5,2) no meio do arquivo vai substituir por ((5)+(2)).

função:

bom, é o que você já sabe o que é. É compilada e fica numa região da memória do programa. Quando é chamada o processador desvia o processamento para a área da função.

Macro é processada pelo pre-processador e modifica o código

Função é processada pelo compilador e vai para o .exe junto com o programa.

Link para o comentário
Compartilhar em outros sites

malloc aloca bytes, calloc aloca blocos de bytes.

Ex:

malloc(2); // aloca 2 bytes de memória

calloc(10, 2); // aloca 10 posições de 2 bytes de memória

Além disso, o calloc inicializa os bytes, por isso é melhor usar ele pra criar vetores dinâmicos.

----

getchar() - função da biblioteca padrão do c.

getche() / getch() - funções da biblioteca conio (eu acho). A primeira retorna o char digitado na tela, a segunda não.

----

Quanto ao casting, pense assim: uma variável representa um valor, e os valores são armazenados exatamente do mesmo jeito pelo computador, mas interpretados de modo diferente pelo programa. Por exemplo, internamente, tanto um int, quanto um char, quanto uma string, são representados internamente por um monte de números.

Então, tecnicamente, você pode fazer qualquer casting que quiser (pelo menos no gcc, o máximo que recebi foi um monte de warnings), mas se o valor convertido não fizer sentido pro programa é provável que você encontre um monte de erros.

Link para o comentário
Compartilhar em outros sites

Arquivado

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

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!