c언어 사용자 정의 함수 정의하기
네 안녕하세요, 이번 포스팅에서는 사용자 정의 함수를 정의하는 방법에 대하여 알아보도록 하겠습니다.
실전 프로그래밍에서는 사용자 정의 함수를 정말 많이 쓰기 때문에 매우 중요한 부분입니다.
그래서 어떻게 사용을 하는지 잘 숙지를 해두셔야 나중에 실제로 프로그램을 만들 때 편하십니다.
그럼 지금부터 시작하도록 하겠습니다.
1. 사용자 정의 함수 정의 방법
사용자 정의 함수를 정의를 할 때는 main() 함수를 우리가 쓸 때처럼 새로운 몸을 만들 때 쓰는 중괄호({})를 사용하여 몸을 구성해줍니다.
이런 식으로 하지요.
예를 들어 '*'을 찍어내는 함수를 정의하고 싶다면 이런 식으로 할 수가 있습니다.
void star_printer()
{
for(int i = 0; i < 20; i++)
{
printf("*");
}
}
이런 식으로 작성을 할 수 있습니다.
2. 반환형 지정하기
반환형은 우리가 결과를 돌려받을 때, 그 결과를 표현할 자료형을 말합니다.
예를 들어서 정수형으로 반환을 받겠다면 본인이 정의한 함수 앞에 int를 붙이면 되겠죠?
그리고 위의 경우는 void를 앞에 붙였는데, 이 경우는 반환값이 없다는 뜻입니다.
그래서 return 문장도 없는 것이죠.
반환값을 받지 않겠다고 선언했으니까요.
3. 함수의 이름 정하기
어찌 보면 가장 중요한 부분이라고 볼 수도 있겠네요.
함수의 이름은 우리가 볼 때 이해하기 쉬우며 직관적이어야 합니다.
그래야 나중에 누군가 개발자의 소스를 뜯어보았을 때 어떤 것을 이용을 했는지 쉽게 알 수 있으며,
협업을 할 시에도 편하게 작업을 할 수가 있습니다.
예를 들어본다면 이런 식으로 쓸 수 있습니다.
void letter_type_selector()
int circle()
double interest_rate()
4. 함수 호출하기
우리가 함수를 만들었다면 이걸 써먹기 위해서 함수를 호출해야겠죠?
함수를 호출하는 방법은 의외로 간단합니다.
그냥 본인이 지정한 함수의 이름을 main() 함수 안에 적고서 함수 이름 뒤에 세미콜론(;)만 붙여주면 됩니다.
이렇게 말이죠.
int main()
{
...
star_printer();
...
return 0;
}
이런 식으로 쓸 수가 있습니다.
참 쉽죠?
그러면 제가 위에서 들었던 예시로 한 번 사용자 지정 함수를 사용하는 것을 실제 코드로 작성하여 보여드리도록 하겠습니다.
#include <stdio.h>
#include <windows.h>
int main()
{
star_printer();
printf("\nhi\n");
star_printer();
printf("\n");
return 0;
}
void star_printer()
{
for(int i = 0; i < 20; i++)
{
printf("*");
}
}
이렇게 작성을 한 번 해봤습니다.
제가 사용자 정의 함수를 밑으로 내려서 작성을 했는데요,
사람마다 스타일은 다르지만, 이렇게 main() 함수 밑에다가 작성을 하는 것이 좀 더 깔끔합니다.
그럼 결과도 한 번 보도록 하겠습니다.
********************
hi
********************
이렇게 결과도 잘 나온 것을 볼 수가 있습니다.
여기까지 사용자 정의 함수를 정의하는 방법에 대하여 알아보았는데요,
다음 포스팅에서는 매개 변수와 반환값에 대하여 알아보도록 하겠습니다.
긴 글 읽어주신 독자분들께 진심으로 감사드립니다 ~
'c언어' 카테고리의 다른 글
c언어 함수 원형 이용해 보기 (0) | 2022.12.04 |
---|---|
c언어 사용자 정의 함수의 매개 변수 이용 방법과 반환 값 올바르게 받는 법 알아보기 (0) | 2022.12.04 |
c언어 함수에 대하여 알아보기(라이브러리 함수, 사용자 정의 함수) (0) | 2022.12.04 |
c언어 반복문(for문, while문) 이용하여 여러 가지 문제 풀어보기(최대공약수 찾기, 반감기 구하기, 숫자 추측하기 게임 만들기, 직각 삼각형 찾기, 복리 이자 계산하기, 수학 문제 자동으로 생성.. (0) | 2022.12.04 |
c언어 break문, goto문, continue문 알아보기(재테크, 주식, 코인 매매 자동화) (0) | 2022.12.04 |
댓글