domingo, 9 de fevereiro de 2014

Passagem por Referência - Substituindo Valores

Para os iniciantes em linguagem C/C++, mostro este bom exemplo de
Passagem de parâmetros por referência.
Na verdade o C não entende o que é Passagem de parâmetros por referência, vindo fazer parte já do C++.
Se você salvar este código com a extensão .c,é provável que o gcc mão compile,
más se você salva-lo em .cpp, o g++ compilará o código com sucesso.

Pequeno Resumo do funcionamento:

Colocando um & ( e comercial ), antes de num1 e num2,obtemos o endereço de memória
destas variáveis, substituindo as variáveis n1 e n2, Entenda que os valores originais
de n1 e n2, só funcionam dentro da função main(); Na passagem para a função subs_titui ( int &num1, int &num2 );
são apagados, e em seguida, substituídos pela mesma função.
recebendo então, os valores que foram inicializados em seu corpo.

Copie, cole e compile o código abaixo:

#include <stdio.h>
#include <conio.h>
void subs_titui ( int &num1, int &num2 ){
    num1 = 50;
    num2 = 500;
}
int main(){
    int n1, n2;
    printf( "\nDigite um Valor Para n1  ");
    scanf("%d", &n1);
    printf( "\nDigite um Valor Para n2  ");
    scanf("%d", &n2);
    printf("\n\nO Valor de n1 é %d \n\nE o valor de n2 é %d", n1, n2 );
    printf( "\n\nAgora vamos substituir estes valores: ");
    getche();
    subs_titui ( n1, n2 );
    printf("\n\nO Valor de n1 agora é %d \n\nE o valor de n2 agora é %d", n1, n2 );
    getche();
}

Nenhum comentário:

Postar um comentário

Observação: somente um membro deste blog pode postar um comentário.