NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • 학습
  • 매뉴얼

    학습


    C# 1. Hello, Csharp!

    페이지 정보

    본문

    짜투리 시간이 날 때마다 C# 기초부터 작성해 보려 합니다. 이곳에서는 초보자분들을 위해 최대한 따라하기 식으로 상세하게 기술하면서 작성할 예정입니다. 오늘은 그 첫번째로 프로그래밍을 처음 접할 때 하는 Hello, World!가 아니라 Hello, Csharp!을 해보도록 하겠습니다. 우선 이 예제를 따라하기 위해 개발 툴을 설치해야 합니다. 아래 링크에 있는 Visual Studio Community 2017을 설치하세요. 직접 마이크로소프트 홈페이지에서 Visual Studio Community 2019 버전을 설치해도 됩니다. 가능하면 최신 버전을 설치하는게 좋겠죠~??

    [ Visual Studio 설치하기 ]

     

    심심풀이로 주요 언어에 대해 관심도를 확인해 보면 역시나 자바가 강세인걸 확인할 수 있습니다.

    TE5bM9M.jpg

     

     

     

    Visual Studio 2013을 실행한 후 아래와 같이 프로젝트를 추가합니다.

    • 파일 > 새로 만들기 > 프로젝트
    • 콘솔 응용 프로그램을 하나 추가합니다. 이름이나 위치는 크게 상관 없습니다. 아주 간단한 프로그램이니까요.

    hpmzam5.png

     

     

    아래와 같이 코딩합니다. 아래 스샷에서 보는것과 같이 클래스는 Program.cs 파일입니다.

    DSDSzHI.png

     

     

    전체 코드는 아래와 같습니다.

    using System;
    using System.Collections.Generic;
    using System.Text;
     
    namespace HelloWorld
    {
        class Program
        {
            static void Main(string[] args)
            {
                Console.WriteLine("Hello, Csharp!");
            }
        }
    }

     

     

    이제 실행(F5)하여 확인해 봅니다.

    응용 프로그램이 너무 빨리 실행되고 종료되어 Console창에 "Hello, Csharp!"글자를 확인하기가 어렵습니다. 그래서 응용 프로그램이 종료되지 않도록, 11번째 라인 다음에 아래와 같이 추가합니다.

    Console.ReadLine();

     

     

    다시 실행해 볼까요?

    여러분도 아래와 같이 Console창이 닫히지 않고 대기상태로 있게 됩니다. Enter(Retrun) 키를 누르면, 창은 자동으로 닫히게 됩니다.

    0WK55wS.png

     

     

    가장 기본적인 응용 프로그램을 작성해 보았습니다. C#으로 만드는 모든 프로그램은 Main 메소드가 무조건 하나만 포함되어야 합니다. (ASP.NET은 예외) 이 메소드를 응용 프로그램의 진입점이라고 부르는데 프로그램을 실행할 때 CLR(Common Language Runtime)이 Main 메소드를 실행시켜 줍니다. 공용 언어 런타임에 대해서는 이 후에 좀 더 자세히 다루도록 하고 오늘은 간단하게 이 부분만 인지하시면 됩니다. 사실 외울 필요도 없죠. VS를 이용하여 프로젝트를 생성하게 되면 자동으로 만들어주기 때문입니다.

    꼭, Visual Studio가 있어야만 C#을 할 수있는것은 아닙니다. 무료로 컴파일러를 제공하기 때문이죠. 기능의 제약이 있기는 하지만 Visual Studio Express를 무료로 제공하고 있기도 합니다. 하지만, 여기에서까지 csc를 이용하여 컴파일을 해보지는 않겠습니다. 나중에 리버스 엔지니어링쪽에서 잠깐 다루도록 하구요. 이제 Visual Studio에서 응용 프로그램의 진입점에 Argument를 전달하고 처리하는 방법에 대해서 알아봅니다.

    아래 12라인에 아래 코드를 추가하세요.

    Console.WriteLine("Hello, {0}!", args[0]);

     

     

    실행하기에 앞서 args에 필요한 값을 넘겨줘야 합니다. 만약, 이대로 실행을 하게 되면 아마도 Out of index에러를 만나게 될겁니다. args가 null이기 때문에 0번째 인덱스에 접근할 수 없기 때문입니다.

    아래와 같이 프로젝트에서 우클릭 후 속성으로 이동합니다. (Alt + Enter : 속성 단축키)

    우측의 솔루션 탐색기에서 Example이 프로젝트입니다.

    dD0M0lu.png

     

     

    디버그 탭에서 명령줄 인수에 NGMASTER를 입력하고 실행(F5)해 봅니다.

    PMAyDqC.png

     

     

    명령줄 인수로 전달한 값이 Console창에 표시되고 있습니다.

    UtePluC.png

     

     

    엔터를 치면 응용 프로그램이 종료됩니다.

    이왕 하는김에 직접 실행하는 방법도 알아보도록 하겠습니다.

    응용 프로그램의 실행 파일이 있는 위치로 이동하여 직접 실행해봅니다.

    솔루션 탐색기의 프로젝트에서 우클릭 후 파일 탐색기에서 폴더 열기를 선택하세요.

    PKl7AI0.png

     

     

    폴더의 bin/Debug로 이동하세요.

    zwzkAtY.png

     

     

    프로젝트와 동일한 이름의 Example.exe가 있습니다.

    이 프로그램을 더블 클릭하여 실행하면, Out of index 에러를 만나게 됩니다. 입력받는 GUI가 존재하지 않기에 Command에서 직접 실행해야 합니다.

    실행 (Window key + R) 창을 불러서 아래와 같이 입력하고 엔터를 쳐서 실행시킵니다.

    UCG9Mx1.png

     

     

    해당 프로그램의 경로가 복잡하신 분들은 HelloWorld.exe 파일을 복사한 후 C드라이브로 복사하세요.

    이제 다시 Command창에서 "cd\"를 입력(큰 따옴표는 빼고 안에 내용만...)하고 엔터를 치세요. 바로 C드라이브 루트로 이동이 됩니다.

    아래와 같이 "HelloWorld NGMASTER"를 입력하고 엔터를 치면 응용 프로그램이 실행됩니다. (확장자인 exe는 생략해도 무관합니다.)

    k3er2Jn.png

     

     

    다음에는 변수들에 대해서 하나씩 알아보도록 할께요.

    그럼 다음 시간에...

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천1 비추천0

    댓글목록

    등록된 댓글이 없습니다.