main()함수는 프로그램이 실행 될때 딱 한번 호출 가능한 걸로 알고 있습니다.
사용자가 임의로 호출 할 수 없답니다.
두번째 예제에서 ... 프로토타입(맞나?) 을 먼저 선언해주어야 한답니다.
main()에서 sub1() 을 호출할때 선언이 안되있으면 그것이 무엇인지 판별할수 없기 때문일꺼 같네요.
다시 말해서...
sub1() ; // 이부분이 필요하다는 것.
sub2() ;
#include <stdio.h>
static int k;
void main()
{
int k=100;
sub1();
sub2();
printf("\n main ===> k = %d",k);
}
sub1()
{
k++;
printf("\n sub1 ===> k = %d",k);
}
sub2()
{
k++;
printf("\n sub2 ===> k = %d",k);
}
아니면... main() 함수를 맨 마지막에 놓으면 된답니다.
#include <stdio.h>
static int k;
sub1()
{
k++;
printf("\n sub1 ===> k = %d",k);
}
sub2()
{
k++;
printf("\n sub2 ===> k = %d",k);
}
void main()
{
int k=100;
sub1();
sub2();
printf("\n main ===> k = %d",k);
}
|