1.함수의 호출과 인라인의 차이점
호출은 정의해논 함수를 생성(화살표로 하면 생성해논 함수에 들어갔다 나옴)
인라인은 정의해논 함수의 코드를 복사한다. 인라인이 속도는 더 빠른데 많이 하면 코드가 늘어난다.
-> 이거 맞나요?

2. 혼자 순환공부하는데 몰겠어염
#include(iostream>
using namespace std;
long fac(int n); -> 이거 왜써요?

int main()
{
     int x;
     long f;

      cout <<"정수를 입력하시오:" ;
      cin >> x;

      f= fac(x);
      cout << x <<"!은" <<f<<" 입니다."<< endl;

return 0;
}

long fac(int n)
{
   cout <<" fac(" << n << ")" << endl; -> 왜 (n)이라고 안쓰고 (" << n << ")이래요?

   if (n<=1) return 1;
   else return n*fac(n-1);
}

답은
fac(3)
fac(2)
fac(1)
3!은 6입니다.


출력값:f(3)
반환값:3(f(2))- 출력값:f(2)
                     반환값:1(f(1)) -> 출력값:f(1)
                                             반환값:1
                             
이렇게 나오잖아요.
그럼 endl; 있으니까
출력값을 차례대로
f(3)
f(2)
f(1)
쓰고 반환값은 오른쪽 부터 대입해서 3*2*1= 6 나오는데 왜 이렇게 되는지 모르겠어요.
반환값과 출력값을 구분못하겠어여;

다른 예를 가지고 오자면

이것저것 생략해서

int s(int i)
{
   cout << "나다"<<endl;
   return i*i;
}

int main(void)
{
   cout<< s(3) << endl;
   return 0;
}

여기선 
나다
9
나오잖아요.  cout 값과 return값 둘다 출력되서

근데 위에 예제에서는 왜 출력값만 따로모으로 반환값따로모아서 해여?