Funções
A mais melhor maneira desenvolver e manter um programa grande é construi-lo das partes menores cada qual são mais fáceis de controlar (uma técnica consultada às vezes a como se divide e conquista). As funções permitem o programador modularize o programa.
As funções permitem que os programas complicados sejam parcelados acima em blocos pequenos, cada qual é mais fácil de escrever, lêem, e mantêm. Nós temos encontrado já o printf principal e empregado da função da biblioteca padrão. Nós podemos naturalmente fazer nossas próprias funções e limas de encabeçamento. Uma função tem a seguinte disposição:
return-type function-name ( argument list if necessary )
{
local-declarations;
statements ;
return return-value;
}
Se o retorn-tipo for omitido, C opta interno. O retorn-valor deve ser do tipo declarado. Todas as variáveis declararam dentro das funções são chamadas variáveis locais, que estão sabidas somente na função a que foram definidas.
Algumas funções têm uma lista do parâmetro que forneça um método de uma comunicação entre a função, e o módulo que chamou a função. Os parâmetros são também variáveis locais, que não são parte externa disponível da função. Todos os programas cobriram assim distante têm o cano principal, que é uma função.
Uma função pode simplesmente executar uma tarefa sem retornar nenhum valor, que no caso tiver a seguinte disposição:
void function-name ( argument list if necessary )
{
local-declarations ;
statements;
}
Os argumentos são passados sempre pelo valor em ligações de controle de C. Isto significa que as cópias locais dos valores dos argumentos estão passadas às rotinas. Toda a mudança feita aos argumentos internamente na função é feita somente às cópias locais dos argumentos.
A fim mudar ou definir um argumento na lista do argumento, este argumento deve ser passado como um endereço. Você usa variáveis regulares se a função não mudar os valores daqueles argumentos. Você DEVE usar ponteiros se a função mudar os valores daqueles argumentos.
Deixar-nos aprender com exemplos:
#include <stdio.h>
void exchange ( int *a, int *b )
{
int temp;
temp = *a;
*a = *b;
*b = temp;
printf(" From function exchange: ");
printf("a = %d, b = %d\n", *a, *b);
}
void main()
{
int a, b;
a = 5;
b = 7;
printf("From main: a = %d, b = %d\n", a, b);
exchange(&a, &b);
printf("Back in main: ");
printf("a = %d, b = %d\n", a, b);
}
E a saída deste programa será indicada como segue:
From main: a = 5, b = 7
From function exchange: a = 7, b = 5
Back in main: a = 7, b = 5 |
|