ํจ์์ ๊ธฐ์ด(๋ณต์ต)
c++์์ ํจ์๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด ํ์ํ ์ง์
- ํจ์ ์ ์ ์ ๊ณต
- ํจ์ ์ํ ์ ๊ณต
- ํจ์ ํธ์ถ
ํจ์ ์ ์
voidํ ํจ์ : ๋ฆฌํด ๊ฐ์ด ์๋ ํจ์
void functionName(parameterList)
{
statements(s)
return; //์๋ต ๊ฐ๋ฅ
}
parameterList๋ ์ด ํจ์์ ์ ๋ฌ๋๋ ๋งค๊ฐ๋ณ์(parameter ๋๋ argument)์ ๋ฐ์ดํฐํ๊ณผ ๊ฐ์๋ฅผ ์ง์
๋ฆฌํด ๊ฐ์ด ์๋ ํจ์๋ ์์ ์ ํธ์ถํ ํจ์์๊ฒ ๋๋๋ ค ์ค ๋ฆฌํด ๊ฐ์ ๋ง๋ฆ
์ผ๋ฐ์ ์ธ ์ฌ์ฉ ํ์
typeName functionName(parameterList)
{
statements(s)
return value; //value๋ typeName ํ์ผ๋ก ๋ณํ๋จ.
}
์ ์, ๋ถ๋ ์์ ์ ์, ํฌ์ธํฐ, ๊ตฌ์กฐ์ฒด์ ๊ฐ์ฒด ๋ฑ ๋ฐฐ์ด์ ์ ์ธํ ๊ทธ ๋ฐ์ ๋ชจ๋ ๋ฐ์ดํฐํ๋ค์ ๋ฆฌํด ๊ฐ์ผ๋ก ์ฌ์ฉ ๊ฐ๋ฅ
ํจ์๋ return ๊ตฌ๋ฌธ์ ์ํํ ํ ์ข ๋ฃ๋จ
ํจ์ ์ํ์ ๊ตฌ๋ฌธ ๊ท์น
ํจ์ ์ํ์ ๋ง๋๋ ๊ฐ์ฅ ์ฌ์ด ๋ฐฉ๋ฒ์ ํจ์ ์ ์ ๋ถ๋ถ์์ ํจ์ ๋จธ๋ฆฌ ๋ถ๋ถ์ ๋ฐ๋ค๊ฐ ๋์ ์ธ๋ฏธ์ฝ๋ก ๋ง ๋ถ์ด๋ ๊ฒ
ํจ์ ์ํ์ ๊ตณ์ด ๋ณ์ ์ด๋ฆ๊น์ง ์ง์ ํ ํ์๋ ์์ผ๋ฉฐ, ๋ฐ์ดํฐํ๋ค์ ๋ฆฌ์คํธ๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ผ๋ก๋ ์ถฉ๋ถ
ex) void cheers(int);
ํจ์ ์ํ์์ ๋ณ์ ์ด๋ฆ์ ๋จ์ง ์์น๋ฅผ ์ ์ฅํ๋ ์ญํ ๋ง ํ๋ฏ๋ก, ํจ์ ์ ์์์ ์ฌ์ฉํ ๋ณ์ ์ด๋ฆ๊ณผ ๋ฐ๋์ ์ผ์นํ ํ์ ์์
ํจ์ ๋งค๊ฐ๋ณ์์ ๊ฐ์ผ๋ก ์ ๋ฌํ๊ธฐ
์ผ๋ฐ์ ์ผ๋ก c++์ ํจ์ ๋งค๊ฐ๋ณ์๋ฅผ ๊ฐ์ผ๋ก ์ ๋ฌํจ
์ฆ, ๋งค๊ฐ๋ณ์์ ์์น ๊ฐ์ ํจ์์ ์ ๋ฌํ๋ฉฐ ์ด๋ ์ ๋ฌ๋๋ ๊ฐ์ ์๋ก์ด ๋ณ์์ ๋์ ๋จ
ํ์ ๋งค๊ฐ๋ณ์ : ์ ๋ฌ๋๋ ๊ฐ์ ๋๊ฒจ๋ฐ๋๋ฐ ์ฐ์ด๋ ๋ณ์
์ค์ ๋งค๊ฐ๋ณ์ : ํจ์์ ์ ๋ฌ๋๋ ๊ฐ
c++ํ์ค์ ์ค์ ๋งค๊ฐ๋ณ์๋ฅผ argument๋ผ๋ ๋จ์ด๋ก ๋ํ๋ด๊ณ , ํ์ ๋งค๊ฐ๋ณ์๋ฅผ parameter๋ผ๋ ๋จ์ด๋ก ๋ํ๋
์ฌ๋ฌ ๊ฐ์ ๋งค๊ฐ ๋ณ์
ํจ์๋ ํ๋ ์ด์์ ๋งค๊ฐ๋ณ์๋ฅผ ๊ฐ์ง ์ ์์
ํจ์ ํธ์ถ์์ ๋งค๊ฐ๋ณ์๋ค์ ์ฝค๋ง๋ก ๋ถ๋ฆฌํจ.
n_chars('R',25);
ํจ์๋ฅผ ์ ์ํ ๋์๋ ํจ์ ๋จธ๋ฆฌ์ ๋ณ์ ์ ์ธ ๋ฆฌ์คํธ์์ ๋ณ์๋ค์ ์ฝค๋ง๋ก ๋ถ๋ฆฌ
void n_chars(char c, int n)
๋ณ์ ์ ์ธ์ ๊ฒฐํฉ์ด ํ์ฉ๋์ง ์์
void fifi(float a, b) // ๊ฒฐํฉ ํ์ฉ x
ํฌ์ธํฐ์ ๋ฐฐ์ด์ ์ฒ๋ฆฌํ๋ ํจ์
int sum_arr(int arr[],int n)
int : ๋ฐฐ์ด์ ๋ฐ์ดํฐํ
arr : ๋ฐฐ์ด์ ์ฃผ์
arr[] : *arr๊ณผ ๊ฐ์, arr์ ํฌ์ธํฐ
ํจ์์ ์ผ๋ฐ ๋ณ์๋ฅผ ์ ๋ฌํ๋ฉด ๋ณต์ฌ๋ณธ์ ๊ฐ์ง๊ณ ์์
ํจ์์ ๋ฐฐ์ด์ ์ ๋ฌํ๋ฉด ์๋ณธ์ ๊ฐ์ง๊ณ ์์
๋ฐฐ์ด์ ๋ด์ฉ ์ถ๋ ฅ๊ณผ const๋ก ๋ณดํธํ๊ธฐ
๋ฐฐ์ด์ ๊ฐ์ด ๋ณ๊ฒฝ๋์ง ์๋๋ก ํ๋ ค๋ฉด, const ํค์๋๋ฅผ ํ์ ๋งค๊ฐ๋ณ์๋ฅผ ์ ์ธํ ๋ ์ฌ์ฉ ๊ฐ๋ฅ
void show_array(const double ar[],int n);