이번에 함수에 관해 작성해 보겠습니다.
제가 처음에 MAIN()함수에 대해 말씀을 드렸는데요,
MAIN()함수는 일단 프로그램이 실행될때 가장 먼저 실행이 되는 함수라고 설명을 드렸었죠?? ㅎㅎ
이번에는 서브함수라고 할까요??
함수를 만들어 MAIN()함수에서 불러오도록 해보겠습니다.
#include<stdio.h>
first()
{
printf("안녕하세요\n");
}
second()
{
printf("이번에는 함수입니다\n");
}
void main()
{
first();
second();
}
자.. 일단 프로그램은 위에서 아래로 한줄한줄 실행해 나가며 프로그램이 작동이 됩니다.
위 소스를 보면 #include를 제외하고, 바로 밑에
first()
이렇게 적혀 있습니다.
제가 first()라는 함수를 만든것입니다.
그리고 프린트문, 두번째로는 second()라는 함수를 만들었구요
마지막에 main()함수를 만들었습니다.
프로그램을 실행시키면, Main()함수가 먼저 실행이 된다고 했죠?? ㅎ
main()함수에 보면, first()가 적혀있고, 바로밑에 second()가 적혀있습니다.
MAIN()함수가 실행 되면서 first()함수를 만나면 first()함수가 정의되어 있는곳으로 이동을 하게 됩니다.
그 이동한 FIRST()함수에서 실행을 하고, 다 끝나면 다시 MAIN()함수로 넘어와 다음줄인
SECOND()함수를 불러오게 되죠 ㅎㅎ
분명히 MAIN()함수에는 printf문이 없는데도 함수를 불러와 printf문을 실행하였습니다.
이게.. 지금 보기에는 왜 이짓거리를 하냐?? 할수도 있는데, 지금은 소스가 간단해 이런 생각을 하실수가 있습니다.
나중에 엄청 긴 소스를 모조리 MAIN()함수에 넣을순 없잖아요?? ㅎㅎ
보기도 불편하고 코딩도 힘들어 지니, 저렇게 함수를 따로 구현해서 MAIN함수에서 불러오는 식으로 많이들 한답니다.
저도 그렇게 코딩을 하고 있구요
#include<stdio.h>
first();
second();
void main()
{
first();
second();
}
first()
{
printf("안녕하세요\n");
}
second()
{
printf("이번에는 함수입니다\n");
}
이번에는 같은 소스인데 조금 다르게 해보았습니다.
서브함수들을 MAIN함수 밑으로 빼내었습니다!!
대시 이럴경우 함수()명을 위에 작성을 해 주셔야 합니다.
프로그램은 위에서 아래로 한줄씩 내려오므로... 처음에 FIRST()함수가 있다, 그 밑에 SECOND()함수가 있다.
라고 일단 프로그램한테 알려준뒤 MAIN()함수를 실행시키고, MAIN()함수에서 FIRST()를 부를때. "아! 아까 FIRST()라는 함수가 있었지??"
라면서 기억을해 밑에 있는 first()함수로 이동후 프로그램을 실행하게 됩니다.
무슨말인지 이해가 가시나요..? 이해가 안가실 거에요.. 왜냐면.. 제가 글을 잘 못쓰거든요 ^^;;;
지금은 일단 이렇게 간단한 코드로 했지만, 조만간 게임관련된걸루 해서 다시 한번 알려드릴게요 ㅎ
'프로그램 > C언어' 카테고리의 다른 글
[C언어] 연산자 (0) | 2013.02.26 |
---|---|
[C언어] 상수에 대해 (0) | 2013.02.25 |
[C언어] 입력함수(scanf) (3) | 2013.02.24 |
[C언어] 변수선언 (2) | 2013.02.24 |
[C언어] 출력 (printf) (0) | 2013.02.23 |
댓글