Qual é a diferença entre declarar e definir uma variável?

Descobri recentemente que definição e declaração são conceitos diferentes em C.

O que significam estes termos? Para quê servem? Como aplicá-los?

Add Done

    Please sign in to answer question.

    6
    Andrea Bucci

    http://umamao.com/questions/qual-e-a-diferen...rs/4c8906e879de4f1a200004b0

    over 1 year ago Rodolfo said:

    Andréia, no caso da variável "a" do primeiro exemplo, ela está sendo declarada e definida naquele lugar. (isto usando sua nomenclatura)
    Eu sempre usei o termo declarar para os dois casos. Só que uso declarar como externa para o caso do extern. :-)

    over 1 year ago Andrea Bucci said:

    Rodolfo, pelo que eu tinha entendido, ficaria a critério do compilador já definir a variável "a" do primeiro exemplo, ou então apenas declará-la - e defini-la somente quando encontrasse uma atribuição. Estou escorregando em algum conceito?

    over 1 year ago Andrea Bucci said:

    Outra coisa, sobre "Eu sempre usei o termo declarar para os dois casos.": isso significa que a escolha da nomenclatura é irrelevante? Na literatura, o mais comum é não fazer a distinção?

    over 1 year ago Rodolfo said:

    Particularmente no caso da variável "a", ela deve ser alocada na pilha e o compilador vai reservar espaço para ela logo no início da função. Por outro lado, se ela for alocada num registrador, então o compilador pode reservar espaço mais para a frente. Um conceito importante de compiladores que pode te ajudar nesta parte é o de "variável viva" que diz que uma variável está viva num lugar se ela foi atribuída anteriormente e (potencialmente) será lida no futuro.

    Search results:
    Qual a diferença entre astronomia e astrologia? - Yahoo! Respostas

    br.answers.yahoo.com/question/index?qid=20070328111227AAygUKK

    Qual a diferença entre astronomia e astrologia? ... Uma distinção principal é entre a astronomia ... da Terra é variável em toda a superfície, e ele ...

    Qual é a diferença entre heterossexual e bissexual? - Yahoo ...

    br.answers.yahoo.com/question/index?qid=20060625212124AAc7bOo

    Qual é a diferença entre heterossexual e ... mulher tem um namorado e tem uma ... COM O SEXO OPOSTO E OS BISSEXUAIS COM OS DOIS. O MELHOR É SE DEFINIR, SABE?!?!?!

    C++ - Qual a diferença entre declarar e inicializar uma matriz em ...

    www.arquivodecodigos.net/dicas/c-qual-a-diferenca-entre-declarar-e...

    Qual a diferença entre declarar e inicializar uma matriz em C++? Os termos declaração e ... C# (CSharp) - Como definir a largura e altura mínimas de um ...

    Qual a diferença entre custos e despesas na empresa | Mundo Sebrae

    www.mundosebrae.com.br/2011/02/qual-a-diferenca-entre-custos-e...

    A dúvida mais comum surge quando é preciso definir o que são gastos, custos e despesas. Seriam todas palavras sinônimas? Se não, qual é a diferença? E ...

    Diferenças entre Java e Javascript - CriarWeb.com Manuais ...

    www.criarweb.com/artigos/164.php

    Veremos a diferença entre estas duas linguagens com uma origem comum. Por Miguel ... tipada, isto quer dizer que ao declarar uma variável teremos que indicar seu tipo e ...

    Search results provided by Bing | Keep searching on Bing / Google