저희가 다른 보기를 보게 하십시오. 뒤에 오는 보기는 1와 10 사이 수의 사각을 쓰는 사각에게 불린 기능을 사용한다.
#include <stdio.h>
int square(int x); /* Function prototype */
int main()
{
int counter;
for (counter=1; counter<=10; counter++)
printf("Square of %d is %d\n", counter, square(counter));
return 0;
}
/* Define the function 'square' */
int square(int x)
{
return x * x;
}
이 프로그램의 산출은 다음과 같이 표시될 것이다:
Square of 1 is 1
Square of 2 is 4
Square of 3 is 9
Square of 4 is 16
Square of 5 is 25
Square of 6 is 36
Square of 7 is 49
Square of 8 is 64
Square of 9 is 81
Square of 10 is 100 |
기능 시제품 사각은 정수 매개변수를 가지고 가고 정수를 돌려보내는 기능을 선언한다. 컴파일러가 주요 프로그램에 있는 사각에 함수 호출을 도달할 때, 그것은 함수 정의에 대하여 함수 호출을 검사할 수 있다.
프로그램이 기능 사각을 부르는 선을 도달할 때, 프로그램은 기능에 뛰어오르고 그것의 경로를 다시 시작하기 전에 주요 프로그램을 통해 저 기능을 수행한다. 반환 유형이 없는 프로그램에는 공허를 사용하여 선언되어야 한다. 따라서 기능에 매개변수는 Value 에의한 통행 Reference 에의한 일지도 모른다.
귀납적 함수는 부르는 기능이다. 그리고 이 과정은 되부름에게 불린다.
가치 함수에 의하여 통행
이전 예에 있는 제곱 함수의 매개변수는 가치를 통과된다. 이것은 가변의 단지 사본이 기능에 통과되었다는 것을 의미한다. 가치에 어떤 변화도 부르는 기능 등을 맞댄 반영되지 않을 것이다.
뒤에 오는 보기는 통과하 에 의하여 가치를 사용하고 부르는 기능에 아무 효력도 없는 통과한 매개변수에는의 가치를 바꾼다. 계속 기능 count_down는 반환 유형이 없다 만큼 선언한 공허이다.
#include <stdio.h>
void count_down(int x);
int main()
{
int counter;
for (counter=1; counter<=10; counter++)
count_down(counter);
return 0;
}
void count_down(int x)
{
int counter;
for (counter = x; counter > 0; counter--)
{
printf("%d ", x);
x--;
}
putchar('\n');
}
프로그램의 산출은 다음과 같이 표시될 것이다:
1
2 1
3 2 1
4 3 2 1
5 4 3 2 1
6 5 4 3 2 1
7 6 5 4 3 2 1
8 7 6 5 4 3 2 1
9 8 7 6 5 4 3 2 1
10 9 8 7 6 5 4 3 2 1 |
|