-> 값을 입력받아 특정 연산을 수행하여 결과를 반환
ex>
int getSum(int a, int b, int c){
return a+b+c;
}
getSum 왼쪽의 int = 반환형 / return a+b+c 는 int
a,b,c = 인자
{} = 함수의 body
main 함수가 항상 먼저 실행된다
#include <stdio.h>
int getSum(int first, int second){
return first + second; // getSum 함수 에서는 main의 result에 바로 접근 불가
}
int main() {
int a, b, result;
scanf("%d %d", &a, &b);
result = getSum(a, b);
printf("%d\n", result);
return 0;
}
스코프 -> 함수간 작업의 완벽한 분담을 위해 존재
각 스코프끼리 영향주지 않는다
#include <stdio.h>
void printStars(int n){
for(int i = 0; i<n; i++){
printf("*");
}
}
int main() {
int n;
scanf("%d", &n);
for(int i = 0; i<n; i++){
printStars(n);
printf("\n");
}
return 0;
}
// main, printStars 의 n과 i는 별개이다
// 스코프 때문!