C언어 요점 정리 - 함수의 매개변수

2022. 1. 5. 19:39C언어

void gugudan4(){
 int dan = 4;

  for ( int i = 1; i <= 9; i++ ) {
    printf("%d * %d = %d\n", dan, i, dan * i);
  }
 }

자 위의 함수는 구구단 4단의 함수입니다. 근데 저희가 구구단 4단말고 다른 구구단도 보고 싶을 수가 있거든요. 근데 지금 보면은 바꿀수가 없잖아요. 바꾸려고 한다면 함수를 하나 더 만들고 dan이라는 변수의 값을 변경해야되요. 그러니깐 여러 함수를 만들게 되면 또 다시 재활용하는 의미가 없어지겠죠?? 그럼 어떻게 하면 좋을까요? int dan = 4에서 4를 지정을 안해주면 되겠죠? 그럼 dan을 함수에서 말고 호출할때 지정해주면 되겠죠?? 함수를 사용할때마다 다른값을 받고싶으니깐 위에서 결정하긴 어렵잖아요. 함수는 사용하는 쪽에서 값을 보내기로 합니다. 최소한의 값을 보내주는거죠~~

자 그럼 함수 안에 값이 들어오게 되는것이죠. 그렇다면 변수도 위에 집어넣어주면 되겠죠?? 왜냐 보낸 값을 받을 공간이 있어야 하니깐요!! 자 이렇게 선언된 변수를 매개변수라고 합니다. 왜 매개변수이냐? 함수를 정의하는쪽과 호출하는 쪽을 매개한다라고 해서 매개변수라고 부릅니다.

void gugudan(int dan){  // 정의

  for ( int i = 1; i <= 9; i++ ) {
    printf("%d * %d = %d\n", dan, i, dan * i);
  }
 }
int main(){
    gugudan(5);  // 호출
    return 0;
 }

자 근데 매개변수같은경우 꼭 한가지만 넘겨야 하는건 아니에요. 두개 이상의 값을 받을 수 있습니다. 값을 두개넘기면 매개변수가 두개여야되는거에요 이런 갯수만 맞줘주시면 됩니다.

728x90