• Matéria: Informática
  • Autor: Anônimo
  • Perguntado 9 anos atrás

Com relação a passagem de parametros em C++, podemos dizer que:

Anexos:

cledersonbc: Está faltando as afirmações
Anônimo: veja o anexo amigo

Respostas

respondido por: cledersonbc
10
"Se uma variável precisa ser alterada dentro de um procedimento, e esta alteração deve ser mantida, esta variável deve ser passada por referência."
Correto. Porque como se trata de um procedimento, ele não pode retornar a variável modificada.

A 4ª e a 5ª estão incorretas:

#include <stdio.h>

int pssVal(int x);
int pssRef(int *x);
int pssDois(int *y, int x);

int main() {
    int x = 10;
    int y = 3;

    printf("(main) x = %d\n\n", x);
    pssVal(x);

    printf("(main) x = %d\n", x);
    pssRef(&x);

    printf("(main) x = %d\n\n", x);
    pssDois(&y, x);

    printf("(main) x = %d\n", x);

    return 0;
}
//Passagem por valor
int pssVal(int x) {
    x = x + 5;
    printf("(pssVal) x = %d\n", x);
}

//Passagem por referência
int pssRef(int *x) {
    *x = *x + 3;
    printf("(pssRef) x = %d\n", *x);
}

//Passagem por valor e referência
int pssDois(int *y, int x) {
    *y = *y + 1;
    x = x + 2;
    printf("(pssDois) y = %d e *x = %d\n", *y, x);
}

Perguntas similares