1 분 소요

이 글은 한빛미디어의 이것이 C#이다를 보고 공부한 내용을 정리한 글입니다.

C#의 기본 파일

C#컴파일러는 확장자가 .cs인 소스 파일을 이용해서 실행파일을 만듬.

비주얼 스튜디오의 설치와 프로젝트 생성은 생략.

처음 만드는 C# 프로그램

2.1 Hello, world

using System; 

namespace Hello
{
    class MainApp
    {
        static void Main(string[] args)
        {
            if (args.Length == 0)
            {
                Console.WriteLine("사용 법 : Hello.exe <이름>");
                return;
            }
            Console.WriteLine("Hello, {0}!", args[0]);
        }
    }
}

다음 예문을 작성하고 Ctrl + Shift + B키를 누르거나 메뉴의 [빌드] - [솔루션 빌드]를 하고 파일탐색기의

2

bin/Debug 파일에 실행 파일이 생성된다.

1

이 실행 파일을 CMD(명령 프롬프트)에서 실행시킬 수 있다.

실행 후 실행파일이 있는 곳으로 이동하여 Hello.exe 실행파일을 실행시키면

3

다음과 같이 실행되는 모습을 볼 수 있다.

4

2.2 코드 뜯어보기

using

  • 해당 namespece안의 클래스를 사용하겠다는 의미
  • 위 코드에서는 using System을 사용하므로 System.Console.WriteLine 메소드가 Console.WriteLine으로 줄여서 작성될 수 있었음.

namespace Hello{}

  • 성격이나 하는일이 비슷한 클래스, 구조체, 인터페이스, 대리자, 열거 형식 등을 하나의 이름 아래 묶는 것.

class MainApp{}

  • 데이터나 데이터를 처리하는 기능(메소드)로 이루어짐
  • 위 예시에선 데이터는 없고 메소드Main()만 있음

// 주석

  • //로 시작되는 코드는 주석이라고 하며 코드를 보는 사람에게 남기는 메세지로 컴파일러는 해당 코드를 무시함
  • //는 한 줄 주석으로 한 줄만을 주석처리하고 /* */은 범위주석으로 /**/사이의 모든 코드를 주석처리함

static void Main(string[] args){}

  • 프로그램의 시작을 담당하는 메소드로 이 메소드가 끝날때 프로그램도 끝남
  • 즉, 모든 프로그램은 Main이라는 이름을 가진 메소드를 무조건 가지고 있어야함
  • 여기서 args는 인자 값으로 cmd에서 프로그램을 실행할 때 같이 주는 값이다.

5

CLR에 대해

  • C# 컴파일러는 C# 소스 코드를 컴파일하여 IL(Intermediate Language)라는 중간 언어로 작성된 실행파일을 만들어냄
  • IL은 하드웨어가 읽어들일 수 없기에 CLRIL을 읽어들여 하드웨어가 이해 할 수 있는 코드로 컴파일한 후 실행
  • 굳이 이렇게 한 이유는 CLR은 C#외에도 다른 언어도 지원되도록 설계되었고 서로 다른 언어들이 만나는 지점이 바로 IL이라는 중간 언어인것.

태그:

카테고리:

업데이트:

댓글남기기