2012. 4. 23. 14:47
Study/C++
함수란? 기능의 주체
반환값 함수이름(입력형태)
{ <- 몸체 시작
몸체 <- 몸체 내용
} <- 몸체 종료
함수를 정의하는 이유
- 모듈화에 의한 프로그램의 질 향상이 가능
- 유지 보수 및 확장의 용이성
- 문제 해결의 용이성 : "Divide and Conquer!"
4가지 형태의 함수
- 전달 인자 O, 반환값 O
- 전달 인자 O, 반환값 X
- 전달 인자 X, 반환값 O
- 전달 인자 X, 반환값 X
전달 인자의 종류에 따른 차이
Call by Value
Call by reference
-------
//* 주소전달 예제 - 안됨 배열명을 주소 인자로 받은 함수에서 그 배열명의 첨자 수를 알수 없다? 주소변수 와 상수의 차이로 인한 문제
int max(int a[])
{
int max = 0;
int arrcnt = sizeof(a)/sizeof(int);
printf("arrcnt : %d\n", arrcnt);
for(int i=0 ; i<arrcnt ; i++)
{
if(max < a[i])
max = a[i];
}
return max;
}
int main(void)
{
int a[] = {4,46,2,5,3,23,56};
int arrcnt = sizeof(a)/sizeof(int);
printf("arrcnt : %d\n", arrcnt);
printf("최대값 : %d\n", max(a));
}
'Study > C++' 카테고리의 다른 글
[OOP1] 클래스 (0) | 2012.04.30 |
---|---|
[OOP1] 120426 Class (0) | 2012.04.26 |
[객체지향프로그래밍1] 120412 동적할당 (0) | 2012.04.12 |
[객체지향프로그래밍] 배열과 포인터 (0) | 2012.04.09 |
[객체지향프로그래밍1]과제-120402 2차원배열 연산 (0) | 2012.04.02 |