C# Chapter 2 처음 만드는 C# 프로그램
이 글은 한빛미디어의 이것이 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
키를 누르거나 메뉴의 [빌드] - [솔루션 빌드]
를 하고
파일탐색기의
bin/Debug
파일에 실행 파일이 생성된다.
이 실행 파일을 CMD(명령 프롬프트)에서 실행시킬 수 있다.
실행 후 실행파일이 있는 곳으로 이동하여 Hello.exe
실행파일을 실행시키면
다음과 같이 실행되는 모습을 볼 수 있다.
2.2 코드 뜯어보기
using
- 해당 namespece안의 클래스를 사용하겠다는 의미
- 위 코드에서는 using System을 사용하므로 System.Console.WriteLine 메소드가 Console.WriteLine으로 줄여서 작성될 수 있었음.
namespace Hello{}
- 성격이나 하는일이 비슷한
클래스
,구조체
,인터페이스
,대리자
,열거 형식
등을 하나의 이름 아래 묶는 것.
class MainApp{}
- 데이터나 데이터를 처리하는 기능(메소드)로 이루어짐
- 위 예시에선 데이터는 없고 메소드
Main()
만 있음
// 주석
- //로 시작되는 코드는 주석이라고 하며 코드를 보는
사람
에게 남기는 메세지로 컴파일러는 해당 코드를 무시함 - //는 한 줄 주석으로 한 줄만을 주석처리하고
/* */
은 범위주석으로/*
와*/
사이의 모든 코드를 주석처리함
static void Main(string[] args){}
- 프로그램의 시작을 담당하는 메소드로 이 메소드가 끝날때 프로그램도 끝남
- 즉, 모든 프로그램은 Main이라는 이름을 가진 메소드를 무조건 가지고 있어야함
- 여기서 args는 인자 값으로 cmd에서 프로그램을 실행할 때 같이 주는 값이다.
CLR에 대해
- C# 컴파일러는 C# 소스 코드를 컴파일하여
IL(Intermediate Language)
라는 중간 언어로 작성된 실행파일을 만들어냄 IL
은 하드웨어가 읽어들일 수 없기에CLR
이IL
을 읽어들여 하드웨어가 이해 할 수 있는 코드로 컴파일한 후 실행- 굳이 이렇게 한 이유는
CLR
은 C#외에도 다른 언어도 지원되도록 설계되었고 서로 다른 언어들이 만나는 지점이 바로IL
이라는 중간 언어인것.
댓글남기기