Main()과 명령줄 인수(C# 프로그래밍 가이드)

업데이트: 2007년 11월

C# 콘솔 응용 프로그램이나 Windows 응용 프로그램의 진입점은 Main 메서드입니다. 라이브러리와 서비스에서는 진입점으로 Main 메서드가 필요하지 않습니다. 응용 프로그램이 시작될 때 Main 메서드는 처음으로 호출되는 메서드입니다.

C# 프로그램에는 진입점이 하나만 있을 수 있습니다. Main 메서드가 있는 클래스가 두 개 이상 있는 경우 /main 컴파일러 옵션을 통해 진입점으로 사용할 Main 메서드를 지정하여 프로그램을 컴파일해야 합니다. 자세한 내용은 /main(Main 메서드의 위치 지정)(C# 컴파일러 옵션)을 참조하십시오.

class TestClass
{
    static void Main(string[] args)
    {
        // Display the number of command line arguments:
        System.Console.WriteLine(args.Length);
    }
}

개요

  • Main 메서드는 프로그램 제어가 시작되고 끝나는 .exe 프로그램의 진입점입니다.

  • Main은 클래스나 구조체 내부에 선언되어 있습니다. Main은 정적이어야 하며 public이 될 수 없습니다. 이전 예제에서 이 메서드에는 기본 액세스 수준인 private이 지정되었습니다. 이 메서드의 바깥쪽 클래스나 구조체는 정적일 필요가 없습니다.

  • Main은 void 또는 int 반환 형식일 수 있습니다.

  • Main 메서드는 명령줄 인수를 포함하는 string[] 매개 변수가 있거나 없는 상태로 선언할 수 있습니다. Visual Studio를 사용하여 Windows Forms 응용 프로그램을 만드는 경우 수동으로 매개 변수를 추가하거나 Environment 클래스를 사용하여 명령줄 인수를 가져올 수 있습니다. 매개 변수는 명령줄 인수(0부터 시작)로 읽습니다. C 및 C++와 달리 프로그램의 이름은 첫 번째 명령줄 인수로 취급되지 않습니다.

단원 내용

C# 언어 사양

자세한 내용은 C# 언어 사양의 다음 단원을 참조하십시오.

  • 1.1 Hello World

참고 항목

개념

C# 프로그래밍 가이드

Visual C# 샘플

참조

C# 프로그램 내부