-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
함수호출위치 및 메모리
21.11.29 12:04 작성 조회수 140
0
강의를 보는 중간에 항상 함수 호출은 main 함수에서 하던데 비주얼스튜디오에서 main함수위에 하면 오류가 뜨더라고요
예를들어
예를들어
#include <stdio.h>
int func(int num)
{
int result = num + 3;
printf("%d", result);
return result;
}
func(3);
void main(void)
{
}
이렇게 변수처럼 전역변수자리에 함수호출은 허용안되는 건가요?
만약에 된다고 하면 항상 main함수부터 실행한다고 했는데 어떻게 되는건가요?
또한 전역변수처럼 메모리에 끝까지 남아있는건가요?
또한 전역변수처럼 메모리에 끝까지 남아있는건가요?
답변을 작성해보세요.
0
고래
2021.11.30
#include <stdio.h>
int func(int num) {
int result = num + 3;
printf("%d", result);
return result;
}
int a = 3;
func(a);
void main(void) {
}
위와 같이 코드를 변경하시면 오류가 없이 작동이 됩니다. 다만, 항상 Main함수에서 코드가 시작 되기 때문에, debug를 해보시면, main함수부터 시작하고 func(a)에 대한 호출은 이루어지지 않아 아무 출력이 없이 코드가 종료됨을 볼 수 있습니다.
답변 1