CURSO DE C

O Comando return

O comando return tem a seguinte forma geral:

 return valor_de_retorno; ou return;

 Digamos que uma função está sendo executada. Quando se chega a uma declaração return a função é encerrada imediatamente e, se o valor de retorno é informado, a função retorna este valor. É importante lembrar que o valor de retorno fornecido tem que ser, pelo menos, compatível com o tipo de retorno declarado para a função.

 Uma função pode ter mais de uma declaração return. Isto se torna claro quando pensamos que a função é terminada quando o programa chega à primeira declaração return. Abaixo estão dois exemplos de uso do return:

 

#include <stdio.h>
int Square (int a)
{
return (a*a);
}
main ()
{
int num;
printf ("Entre com um numero: ");
scanf ("%d",&num);
num=Square(num);
printf ("\n\nO seu quadrado vale: %d\n",num);
}

#include <stdio.h>
int EPar (int a)
{
if (a%2)                /* Verifica se a e divisivel por dois */
        return 0;
else
        return 1;
}
main ()
{
int num;
printf ("Entre com numero: ");
scanf ("%d",&num);
if (EPar(num))
        printf ("\n\nO numero e par.\n");
else
        printf ("\n\nO numero e impar.\n");
}
É importante notar que, como as funções retornam valores, podemos aproveitá-los para fazer atribuições. Mas não podemos fazer:

 

                func(a,b)=x;    /* Errado! */
No segundo exemplo vemos o uso de mais de um return em uma função.

 Fato importante: se uma função retorna um valor você não precisa aproveitar este valor. Se você não fizer nada com o valor de retorno de uma função ele será descartado. Por exemplo, a função printf() retorna um inteiro que nós nunca usamos para nada. Ele é descartado.

 


AUTO AVALIAÇÃO

Veja como você está.

  • Escreva a função 'EDivisivel(int a, int b)' (tome como base EPar(int a)). A função deverá retornar 1 se o resto da divisão de a por b for zero. Caso contrário, a função deverá retornar zero.

  • Página Anterior  Índice da Aula  Próxima Página

    Dúvidas? De uma olhadinha em nossoFAQ

    Perguntas para a lista do Curso de C