AlgIII Aula2 2014
947 palavras
4 páginas
UNIVERSIDADE LUTERANA DO BRASILTECNOLOGIA E COMPUTAÇÃO
Algoritmos e Programação III – Aula 2
Alocação Dinâmica de Memória,
Passagem de Parâmetros por valor e referência
Edemar Costa Oliveira - 2014
1
Passagem de Parâmetros por Valor e Referência
Quando chamamos uma função, o conteúdo existente nos parâmetros são enviados para os argumentos da função para o seu tratamento. Este processo chama-se Passagem de Parâmetros, sendo que este tipo de passagem pode ser feita de duas formas:
Por Valor
Por referência
Introdução-2
Passagem de Parâmetros por Valor Por valor ou cópia: O conteúdo dos argumentos e parâmetros são independentes.
Ou seja, a alteração do conteúdo do argumento não influencia no conteúdo do parâmetro. O valor do argumento é calculado no tempo da chamada e copiado para o parâmetro correspondente. Exemplo: int soma (int p1, int p2)
{
p1+= p2; return p1;
}
int main()
{
int v1=3, v2=5; printf("%d",soma(v1,v2)); }
Introdução-3
Passagem de Parâmetros por Valor
Neste exemplo a passagem de parâmetros é ilustrada na chamada soma(v1,v2) de main. Nesta chamada, os argumentos v1 e v2 são passados por valor e os parâmetros formais (p1 e p2) da função soma usam cópias dos valores de v1 e v2 respectivamente. Ainda, na função soma o valor de p1 é alterado, mas a variável v1 de main permanece inalterada. int soma (int p1, int p2)
{
p1+= p2; return p1;
}
int main()
{
int v1=3, v2=5; printf("%d",soma(v1,v2)); }
Introdução-4
Passagem de Parâmetros por Referência Por referência: O conteúdo dos argumentos e parâmetros são interligados, ou seja, compartilham o mesmo endereço de memória. Sendo assim, a alteração de um argumento influencia diretamente no conteúdo de seu parâmetro correspondente. Passar um argumento por referência (ou por endereço) significa que o endereço de memória do argumento é copiado para o parâmetro correspondente, de modo que o parâmetro se torna uma referência (ponteiro) indireta ao argumento real.
Introdução-5
Passagem