C# - C# ๊ธฐ๋ณธ ๊ตฌ์กฐ ์์ ์ ๋ณต: ์ถ๋ ฅ, ์ฃผ์, ์๋์์ฑ
๐ C# ๊ธฐ๋ณธ ๊ตฌ์กฐ ์์ ์ ๋ณต — ์ถ๋ ฅ, ์ฃผ์, ์๋์์ฑ
๐งฉ C# ์ฝ๋ ๊ตฌ์กฐ ์ดํดํ๊ธฐ
C# ํ๋ก๊ทธ๋จ์ ๋ฐ๋์ ํด๋์ค์ ๋ฉ์๋๋ก ๊ตฌ์ฑ๋๋ฉฐ, ์ง์
์ ์ธ Main ๋ฉ์๋์์ ์คํ์ด ์์๋๋ค.
๊ธฐ๋ณธ ์ฝ์ ์ ํ๋ฆฌ์ผ์ด์
๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ๋ค.
using System;
namespace HelloWorld
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}
}
๊ตฌ์ฑ ์์ ์ค๋ช
- using System;: ์ฝ์ ์ ์ถ๋ ฅ์ ํฌํจํ .NET ๊ธฐ๋ณธ ๊ธฐ๋ฅ์ด ์ ์๋ ๋ค์์คํ์ด์ค๋ฅผ ํฌํจํ๋ค.
- namespace HelloWorld: ์ฝ๋์ ๋ ผ๋ฆฌ์ ๊ตฌ์ญ์ ์ ์ํ๊ณ , ํด๋์ค ์ด๋ฆ ์ถฉ๋์ ๋ฐฉ์งํ๋ค.
- class Program: ์คํ ์ฝ๋๊ฐ ํฌํจ๋๋ ํด๋์ค์ด๋ฉฐ, C#์์๋ ๋ฐ๋์ ํด๋์ค ๋๋ ๊ตฌ์กฐ์ฒด ๋ด๋ถ์ ์ฝ๋๊ฐ ์กด์ฌํด์ผ ํ๋ค.
- static void Main(string[] args): ํ๋ก๊ทธ๋จ์ ์ง์ ์ ์ด๋ฉฐ, C# ์ฝ์ ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ฐ๋์ ํ์ํ ๋ฉ์๋์ด๋ค.
- Console.WriteLine(...): ๋ฌธ์์ด์ ์ฝ์์ ์ถ๋ ฅํ๊ณ ์ค๋ฐ๊ฟ์ ํฌํจํ๋ค.
๐จ๏ธ ์ถ๋ ฅ ๋ฉ์๋: Write vs WriteLine
Console.WriteLine()์ ๋ฌธ์์ด ์ถ๋ ฅ ํ ์ค๋ฐ๊ฟ๊น์ง ์ฒ๋ฆฌํ๋ค.
Console.Write()๋ ์ค๋ฐ๊ฟ ์์ด ์ถ๋ ฅํ๋ฉฐ, ๋ค์ ์ถ๋ ฅ์ด ๊ฐ์ ์ค์ ์ด์ด์ง๋ค.
์๋ฅผ ๋ค์ด,
Console.Write("A");
Console.Write("B");
๋ AB๋ก ์ถ๋ ฅ๋๋ฉฐ,
Console.WriteLine("A");
Console.WriteLine("B");
๋ ์ค์ ๋ฐ๊ฟ A์ B๊ฐ ๊ฐ๊ฐ ์ถ๋ ฅ๋๋ค.
๐ก ์ด์ค์ผ์ดํ ์ํ์ค
์ด์ค์ผ์ดํ ์ํ์ค๋ ๋ฌธ์์ด ๋ด๋ถ์ ํน์ํ ๋์์ ์ฝ์ ํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ค.
์ํ์ค | ์ค๋ช |
\n | ์ค๋ฐ๊ฟ |
\t | ์ํ ํญ |
\\ | ๋ฐฑ์ฌ๋์ ์ถ๋ ฅ |
\" | ํฐ๋ฐ์ดํ ์ถ๋ ฅ |
\' | ์์๋ฐ์ดํ ์ถ๋ ฅ |
์์:
Console.WriteLine("์ด๋ฆ\t๋์ด");
Console.WriteLine("Kero\t30");
→ ํญ ์ ๋ ฌ๋ ํ์ฒ๋ผ ์ถ๋ ฅ๋๋ค.
๐ฌ ์ฃผ์(Comment)
์ฃผ์์ ์ฝ๋์ ์ค๋ช , ๋ฉ๋ชจ, ๊ธฐ๋ก์ ์ํ ๋๊ตฌ๋ก, ์ปดํ์ผ๋ฌ์ ์ํด ๋ฌด์๋๋ค.
- ํ ์ค ์ฃผ์: //๋ฅผ ์ฌ์ฉํ๋ฉฐ ํด๋น ์ค ๋๊น์ง ์ฃผ์ ์ฒ๋ฆฌ๋๋ค.
- ์ฌ๋ฌ ์ค ์ฃผ์: /* */๋ฅผ ์ฌ์ฉํ๋ฉฐ ์์๊ณผ ๋์ ๋ช ์ํด ๋ฒ์ ์ฃผ์์ ์์ฑํ๋ค.
์ข์ ์ฃผ์์ ๋ค์์ ๋ง์กฑํด์ผ ํ๋ค.
- ์ ํํ ์ค๋ช ์ ๋ด๊ณ ์์ด์ผ ํ๋ค.
- ์ค๋๋ ์ ๋ณด๊ฐ ํฌํจ๋์ด ์์ง ์์์ผ ํ๋ค.
- ์ฝ๋์ ํ๋ฆ์ด๋ ์๋๋ฅผ ๋ช ํํ ๋๋ฌ๋ด์ผ ํ๋ค.
์ฃผ์์ ์ฝ๋ ์์ฒด๋ฅผ ๋์ฒดํ์ง ์๊ณ ๋ณด์ํ๋ ์๋จ์ด์ด์ผ ํ๋ฉฐ, ํ์ํ ๋๋ง ์์ฑํ๋ ๊ฒ์ด ๋ฐ๋์งํ๋ค.
โ๏ธ ์๋์์ฑ๊ณผ ์ฝ๋ ํ ํ๋ฆฟ ๊ธฐ๋ฅ
Visual Studio๋ ๊ฐ๋ฐ์์ ์ฝ๋ฉ ์์ฐ์ฑ์ ๋์ด๊ธฐ ์ํด ์๋์์ฑ ๊ธฐ๋ฅ์ ์ง์ํ๋ค.
- Tab ํค๋ฅผ ์ด์ฉํด ๋ณ์๋ช , ํด๋์ค๋ช , ๋ฉ์๋๋ช ๋ฑ์ ์๋์์ฑํ ์ ์๋ค.
- Ctrl + Space๋ฅผ ๋๋ฅด๋ฉด ์ฌ์ฉ ๊ฐ๋ฅํ ๋ฉ์๋ ๋ชฉ๋ก๊ณผ ์ค๋ช ์ด ํ์๋๋ค.
- ๋ฐ๋ณต๋ฌธ, ์กฐ๊ฑด๋ฌธ ๋ฑ์ ๊ตฌ์กฐ๋ฅผ ์์ฑํ ๋ for, if ์ ๋ ฅ ํ Tab์ ๋ ๋ฒ ๋๋ฅด๋ฉด ์ฝ๋ ํ ํ๋ฆฟ์ด ์๋์ผ๋ก ์์ฑ๋๋ค.
์ด ๊ธฐ๋ฅ์ ์ฝ๋๋ฅผ ๋น ๋ฅด๊ฒ ์์ฑํ ์ ์๋๋ก ๋์์ฃผ๋ฉฐ, ์คํ๋ก ์ธํ ์ค๋ฅ๋ฅผ ์ค์ฌ์ค๋ค.
๐ฃ ํ์ต ํ๋์ ์กฐ์ธ
๋ฌธ๋ฒ์ด๋ ํค์๋๋ฅผ ์ธ์ฐ๊ธฐ๋ณด๋ค ์ฝ๋ ๊ตฌ์กฐ์ ์๋ฆฌ๋ฅผ ์ดํดํ๋ ๊ฒ์ด ์ฐ์ ๋์ด์ผ ํ๋ค.
ํนํ namespace, class, Main ๋ฉ์๋์ ๊ด๊ณ์ ์ญํ ์ ์ ํํ ํ์
ํ๋ ๊ฒ์ด ์ค์ํ๋ค.
์ง์ ์
๋ ฅํ๊ณ ์คํํด๋ณด๋ ๊ฒฝํ์ ํตํด ์ถ๋ ฅ ๋ฐฉ์, ์ฃผ์ ์ฒ๋ฆฌ, ์๋์์ฑ ๊ธฐ๋ฅ ๋ฑ์ ์ฒด๋ํ๋ ๊ฒ์ด ํจ๊ณผ์ ์ธ ํ์ต ๋ฐฉ๋ฒ์ด๋ค.