mwultong Blog ... 프로그래밍 / 계산기

컴퓨터 엑셀 워드 포토샵 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Sunday, February 25, 2007

C언어 에러 해결] unresolved external symbol _main referenced in function _mainCRTStartup


C소스를 컴파일하고 링크하여 실행 파일로 만들 때 "unresolved external symbol _main referenced in function _mainCRTStartup..." 이런 에러가 생길 수 있습니다. 이것은 프로그램의 본체가 되는 메인 함수 즉 main() 함수가 없기 때문에 생기는 링커 에러입니다.

링커 에러 화면:
D:\Z>cl /nologo example.cpp && example.exe
example.cpp
LIBC.lib(crt0.obj) : error LNK2019: unresolved external symbol _main referenced
in function _mainCRTStartup
example.exe : fatal error LNK1120: 1 unresolved externals

D:\Z>



에러 발생 예제 (메인 함수가 없기에):
#include <stdio.h>

void test() {
  printf("test\n");
}



에러 수정 예제 (메인 함수 추가):
#include <stdio.h>

void test();


int main (void) {

  test();

  return 0;
}




void test() {
  printf("test\n");
}


즉, 위와 같이 C소스에 main() 함수를 추가해 주면 됩니다. 그런데 만약 그 C소스가 실행파일을 만드는 소스가 아니라, 라이브러리를 만드는 소스라면 메인 함수가 없습니다.

▶▶ C언어] argc, argv 파라미터(인수; 매개변수) 사용 예제; main Function Parameter




tag: cpp
C언어 | C/C++ (Visual C++)

0 Comments:

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Previous Posts
Monthly Archives
Top