sexta-feira, 22 de abril de 2016

LINGUAGEM C/C++ - 1.5.1 FUNÇÕES COM ARGUMENTOS

Um argumento de função é simplesmente um valor que é passado para a função no momento em que ela é chamada. Você já viu uma função que leva argumento: printf( ). Você também pode criar funções que passam argumentos. Por exemplo, a função sqr( ), neste programa, leva um argumento inteiro e mostra o seu quadrado:

#include <stdio.h>
int sqr (int x){ //o parâmetro foi declarado dentro dos
parênteses
printf (“%d elevado ao quadrado é %d\n”, x, x * x);
}
void main(){
int num;
num = 100;
sqr(num); //chama sqr com o parâmetro num
}

Como você pode ver na declaração de sqr( ), a variável x que receberá o valor passado por sqr( ) é declarada dentro dos parênteses que seguem o nome da função. Funções que não passam argumentos não necessitam de quaisquer variáveis, de maneira que os parênteses ficam vazios. Quando sqr( ) é chamada, o valor de num – neste caso 100 – é passado para x. Desse modo, a linha “100 elevado ao quadrado é 10000” é apresentada. Você deve executar este programa para se convencer do que ele realmente faz, operando como esperado.

É importante fixar dois termos. Primeiro, o argumento refere-se ao valor que é usado para chamar uma função. A variável que recebe o valor dos 5 argumentos usados na chamada da função é um parâmetro formal da função. Na verdade, funções que levam argumentos são chamados de funções
parametrizadas. O importante é que a variável usada como argumento em uma chamada de função não tenha nada a ver com o parâmetro formal que recebe o seu valor.

Um outro exemplo de uma função parametrizada é mostrado aqui. A função mul( ) imprime o produto de dois argumentos inteiros. Note que os parâmetros para a função mul( ) são declarados usando-se uma lista separada por vírgula.

#include <stdio.h>
void mul (int a, int b){
printf (“%d”, a * b);
}
void main(){
mul (10, 11);
}

Lembre-se que o tipo de argumento usado para chamar uma função deverá ser igual ao do parâmetro formal que está recebendo o dado argumento. Por exemplo, você não deve tentar chamar a função mul( ) com dois argumentos de ponto flutuante.

Nenhum comentário:

Postar um comentário