using System;
using static System.Console;
namespace Hello
{
class MainApp
{
// 프로그램 실행이 시작되는 곳
static void Main(string[] args)
{
if (args.Length == 0)
{
Console.WriteLine("사용법 : Hello.exe <이름>");
return;
}
WriteLine("Hello, {0}!", args[0]); // Hello, World를 프롬프트에 출력
}
}
}
ctrl+shift+B
or [빌드]-[솔루션 빌드]
bin\Debug\Hello.exe
생성Windows + R
- cmd
입력Hello.exe
) 경로로 이동 : cd + 프로젝트 경로
using System;
using
: C# 키워드(C# 언어의 규격에 미리 정의되어 있는 특별한 단어);
: 컴파일러에 문장의 끝을 알림System.Console.WriteLine()
-축소-> Console.WriteLine()
using static System.Console;
using
: 네임스페이스 전체 사용using static
: 어떤 데이터 형식의 정적 멤버를 데이터 형식의 이름을 명시하지 않고 참조하겠다고 선언하는 기능Write()
, WriteLine()
, Read()
, Readline()
Console.WriteLine()
- 축소 -> WriteLine()
namespace Hello
namespace
namespace+이름
뒤 괄호 사이에는 이 네임스페이스에 소속되는 클래스가 들어간다.namespace Hello
{
class MainApp
{
WriteLine("Hello, {0}!", args[0]);
}
}
class MainApp{}
// 프로그램 실행이 시작되는 곳
// 프로그램
// 실행이
// 시작되는 곳
/* 프로그램
실행이
시작되는 곳 */
//
or /**/
(여러 줄)class MainApp
{
// 프로그램 실행이 시작되는 곳
static void Main(string[] args)
{
if (args.Length == 0)
{
Console.WriteLine("사용법 : Hello.exe <이름>");
return;
}
WriteLine("Hello, {0}!", args[0]); // Hello, World를 프롬프트에 출력
}
}
static void Main(string[] args){}
static
CLR(Commmon Language Runtime)
- C#으로 만든 프로그램이 실행되는 환경
- CLS(Common Language Specification) 규격을 따르는 모든 언어로 작성된 프로그램 지원
- 각 언어로 작성된 프로그램의 실행 & 서로 다른 언어로 작성된 언어 사이의 호환성 제공
void
: 메소드의 반환 형식 (어떤 결과도 돌려주지 않을 것이라는 의미)Main
: 메소드의 이름{
에서 메소드의 실행이 시작되고, }
에서 메소드의 실행이 끝남if(args.Length == 0){}
: 매개변수의 길이가 0일 경우, 즉 매개변수가 전달되지 않을 경우 {}
안 코드 실행return;
: 원래 메소드의 호출자에게 메소드 실행 결과를 돌려주는 역할을 하지만, 여기서는 Main() 메소드를 종료하는 용도로만 사용