일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 윈도우즈
- Sort
- meta
- Kafka
- c++
- 투자
- query
- UTF-8
- HTML
- 포인터
- 노드
- OOP
- algorithm
- API
- WebProgramming
- windows
- function
- 자료구조
- 악성코드
- C
- CLASS
- JavaScript
- java
- System
- jsp
- CSS
- request
- Call-by-reference
- beans
- array
Archives
- Today
- Total
hahahia
C언어 함수 본문
¢함수는 프로그램을 구성하는 기본적인 구성 요소
¢하나의 프로그램은 여러 함수들이 모여서 이루어짐
¢다른 함수들과 데이터를 주고받을 수 있음
¢일단 만들어지면 다른 프로그램에서도 사용될 수 있다.
¢코드의 재활용이 가능해지고 가독성이 증대되며 유지관리가 쉬워짐.
¢함수는 특정한 작업을 수행하는 독립적인 부분으로 일련의 처리를 담당하는 문장들의 집합.
¢프로그램의 다른 부분에서 함수를 불러서 사용하는 것을 함수 호출이라고 함.
¢즉, 함수는 입력이 주어지고 이 입력을 이용하여 특정작업을 수행하여 그 결과를 반환하는 프로그램의 기본적인 구성 단위.
Input X -> Function -> Output Y
Input X -> Function -> Output Y
¤컴파일러는 중괄호가 시작되기 전까지 부분을 "함수의 헤더"로 판단, 그리고 중괄
호로 묶인 부분을 "함수의 바디"로 판단
¤함수의 이름으로는 식별자(identifier)를 사용
¤함수의 "파라메터리스트"에는 한 개의 변수 선언이 올 수도 있고, 여러 개의 변수 선언이 올 수도 있음. 여러 개의 변수가 올 경우, 콤마(,)를 이용해서 구분. 변수 선언이 오지 않을 경우에는 생략하고 괄호를 닫거나 "void"를 추가
¤return문은 결과를 되돌려주는 역할을 함. 리턴타입에는 되돌려질 결과 값의 형태(type)를 정의함. "리턴타입"이 없을 경우에는 void를 씀
¤바디 부분에 포함될 "변수 선언부"와 "실행 코드부"의 순서는 반드시 지켜야 함. 참고로, C++에는 이러한 순서에 제약이 없어졌음
호로 묶인 부분을 "함수의 바디"로 판단
¤함수의 이름으로는 식별자(identifier)를 사용
¤함수의 "파라메터리스트"에는 한 개의 변수 선언이 올 수도 있고, 여러 개의 변수 선언이 올 수도 있음. 여러 개의 변수가 올 경우, 콤마(,)를 이용해서 구분. 변수 선언이 오지 않을 경우에는 생략하고 괄호를 닫거나 "void"를 추가
¤return문은 결과를 되돌려주는 역할을 함. 리턴타입에는 되돌려질 결과 값의 형태(type)를 정의함. "리턴타입"이 없을 경우에는 void를 씀
¤바디 부분에 포함될 "변수 선언부"와 "실행 코드부"의 순서는 반드시 지켜야 함. 참고로, C++에는 이러한 순서에 제약이 없어졌음
함수의 예제
#include <stdio.h>
void message(int number); // 화면에 메시지 출력
int sum(int start, int end); // 일정 범위의 합 계산
void main(void) {
int a=3, b=7;
int result;
message(1);
result = sum(a,b);
message(2);
printf("%d부터 %d까지 합 == %d\n", a, b, result);
}
void message(int number) {
printf("위치 : %d\n",number);
}
int sum(int start, int end) {
int i, sum = 0;
message(3);
for(i = start;i<=end;i++)
sum += i;
message(4);
return sum;
message(5);
// return문 뒤의 문장은 수행 되지 않음
}
'Language > C' 카테고리의 다른 글
난수 생성 srand 함수 (0) | 2011.05.27 |
---|---|
지역 변수와 전역 변수 (0) | 2011.05.22 |
ab + ba = 99 를 만족하는 a, b값 구하는 프로그램 (0) | 2011.05.13 |
break와 continue의 차이 (0) | 2011.05.13 |
컴입 과제 - 반목문(for, while, do while)을 이용한 factorial 출력program (0) | 2011.05.10 |
Comments