S T U D Y/C#

[Study C#] C# λ³€μˆ˜ λ§Œλ“€κΈ°

Junesker 2021. 12. 1. 10:35
λ°˜μ‘ν˜•

04 C# λ³€μˆ˜ λ§Œλ“€κΈ°

ν”„λ‘œκ·Έλž˜λ°μ˜ κ°€μž₯ 기본이라고 ν•  수 μžˆλŠ” λ³€μˆ˜ λ§Œλ“€κ³  μ΄ˆκΈ°ν™”ν•˜λŠ” 방법을 μž‘μ„±ν•΄λ³΄κ³ μž ν•©λ‹ˆλ‹€. 'λ³€μˆ˜ μ„ μ–Έ 및 μ΄ˆκΈ°ν™”'라고도 ν•˜λŠ”λ° λ³€μˆ˜λ‘œ μ‚¬μš©ν•  λͺ…μΉ­(?)을 μ •ν•˜λŠ”λ° κ°€μž₯ μ‹œκ°„μ΄ 였래 κ±Έλ¦¬λŠ”κ²ƒ κ°™λ‹€. (맀번 뭐라고 μ§€μ„κΉŒλ₯Ό κ³ λ―Όν•΄μ„œ κ·ΈλŸ°λ“―...)

 

 

 

 

 

C# λ³€μˆ˜ λ§Œλ“€κΈ°

 

 

 

 

 

λ³€μˆ˜

 

λ³€μˆ˜λŠ” 데이터λ₯Ό λ©”λͺ¨λ¦¬μ— μ €μž₯ν•΄ λ†“κ³ μ„œ μ‚¬μš©ν•˜κ³  싢을 λ•Œ κΊΌλ‚΄ μ“Έ 수 μžˆλŠ” μ €μž₯ 곡간이닀. λ³€μˆ˜λ₯Ό μ„ μ–Έν•˜κ³  μ΄ˆκΈ°ν™” ν•˜λŠ” κ³Όμ •μœΌλ‘œ λ³€μˆ˜λ₯Ό μ‚¬μš©ν•  수 μžˆλŠ”λ°, λ©”λͺ¨λ¦¬μ˜ 곡간을 λ§Œλ“œλŠ”κ²Œ λ³€μˆ˜λ₯Ό μ„ μ–Έν•˜λŠ”κ²ƒμ΄κ³  κ·Έ μ•ˆμ— 데이터λ₯Ό μ €μž₯ν•˜λŠ”κ²Œ μ΄ˆκΈ°ν™”ν•˜λŠ”κ²ƒμ΄λ‹€.

 

λ³€μˆ˜ μ„ μ–Έ

λ°μ΄ν„°ν˜•μ‹ μ„€λͺ…
int μ •μˆ˜ν˜• 데이터λ₯Ό μ €μž₯ν•©λ‹ˆλ‹€.
string λ¬Έμžμ—΄ 데이터λ₯Ό μ €μž₯ν•©λ‹ˆλ‹€.
bool μ°Έ κ°’ λ˜λŠ” κ±°μ§“ 값을 true와 false ν‚€μ›Œλ“œλ‘œ μ €μž₯ν•©λ‹ˆλ‹€.
double, float μ‹€μˆ˜ν˜• 데이터λ₯Ό μ €μž₯ν•©λ‹ˆλ‹€.
object λͺ¨λ“  데이터λ₯Ό μ €μž₯ν•©λ‹ˆλ‹€.

 

 

 

 

 

λ³€μˆ˜ λ§Œλ“€κ³  μ‚¬μš©ν•˜κΈ°

 

λ³€μˆ˜λ₯Ό λ§Œλ“€λ•Œ κ·œμΉ™μ΄ μžˆλ‹€. ν•΄λ‹Ή κ·œμΉ™μ€ ν”„λ‘œκ·Έλž˜λ°μ„ ν•˜λ©΄μ„œ μžμ—°μŠ€λŸ½κ²Œ μ΅ν˜€κ°ˆ λ‚΄μš©μ΄λ‹€.

 

  • λ³€μˆ˜μ˜ 첫 κΈ€μžλŠ” λ°˜λ“œκΈ° 문자둜 μ§€μ •ν•©λ‹ˆλ‹€. 
  • 첫 κΈ€μžλŠ” μˆ«μžκ°€ 올 수 μ—†μŠ΅λ‹ˆλ‹€.
  • κΈΈμ΄λŠ” 255자 μ΄ν•˜λ‘œ ν•˜κ³  곡백을 포함할 수 μ—†μŠ΅λ‹ˆλ‹€.
  • μœ λ‹ˆμ½”λ“œλ₯Ό μ§€μ›ν•˜λ―€λ‘œ μ˜μ–΄, ν•œκΈ€, ν•œμž λ“± μ‚¬μš© κ°€λŠ₯ν•˜κ³ , μ˜λ¬Έμžμ™€ 숫자, μ–Έλ”μŠ€μ½”μ–΄(_) μ‘°ν•©μœΌλ‘œ μ‚¬μš©ν•˜κ³  기타 특수 κΈ°ν˜ΈλŠ” μ‚¬μš©ν•  수 μ—†μŠ΅λ‹ˆλ‹€.
  • C#μ—μ„œ μ‚¬μš©ν•˜λŠ” ν‚€μ›Œλ“œ(μ˜ˆμ•½μ–΄λ‚˜ λ©”μ„œλ“œ λ“±μ˜ 이름)λŠ” μ‚¬μš©ν•  수 μ—†μŠ΅λ‹ˆλ‹€. using, public, class, static, void, Main λ“±μ˜ ν‚€μ›Œλ“œλŠ” μ‚¬μš©ν•  수 μ—†μŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ, ν‚€μ›Œλ“œ μ•žμ— '@' 기호λ₯Ό 뢙이면 ν‚€μ›Œλ“œλ„ λ³€μˆ˜λ‘œ μ‚¬μš© κ°€λŠ₯ν•˜μ§€λ§Œ ꢌμž₯ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
  • λ³€μˆ˜λŠ” λŒ€/μ†Œλ¬Έμžλ₯Ό κ΅¬λΆ„ν•˜κ³ , 일반적으둜 μ†Œλ¬Έμžλ‘œ μ‹œμž‘ν•©λ‹ˆλ‹€.
  • λ³€μˆ˜ 이름은 ν•œκΈ€λ‘œ 선언해도 μƒκ΄€μ—†μŠ΅λ‹ˆλ‹€.
  • ν•œκΈ€ λ³€μˆ˜λ₯Ό μ‚¬μš©ν•¨μœΌλ‘œμ¨ ν”„λ‘œκ·Έλž¨ μ½”λ“œμ˜ 가독성을 높일 수 μžˆμŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ μ—¬λŸ¬ κ°œλ°œμžκ°€ ν”„λ‘œκ·Έλž¨μ„ λΆ„μ„ν•˜κ³  μ‚¬μš©ν•˜λŠ” μƒν™©μ—μ„œλŠ” 곡톡 언어인 μ˜μ–΄λ₯Ό μ‚¬μš©ν•˜κΈ°μ— λŒ€μ²΄λ‘œ ν•œκΈ€ λ³€μˆ˜ 이름은 잘 μ‚¬μš©ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

** ν•œκΈ€λ³€μˆ˜λŠ” μ‹€μ œλ‘œ 잘 μ“°μ§€ μ•Šμ„ λΏλ”λŸ¬ μ•„μ§κΉŒμ§€λŠ” μ‚¬μš©ν•œ κ±Έ 본적은 μ—†μŒ..

 

 

 

 

 

 

λ³€μˆ˜ μ„ μ–Έ 및 μ΄ˆκΈ°ν™”

 

μ„ μ–Έν•œ λ³€μˆ˜ μ•ˆμ— 데이터λ₯Ό ν• λ‹Ήν•˜λŠ”κ²ƒμ΄ μ΄ˆκΈ°ν™”μž…λ‹ˆλ‹€.

 

λ³€μˆ˜ μ„ μ–Έ 및 μ΄ˆκΈ°ν™”

 

ν‘œκΈ°λ²•

* ν—κ°€λ¦¬μ•ˆ ν‘œκΈ°λ²• : λ³€μˆ˜ 이름에 데이터 ν˜•μ‹μ— λ§žλŠ” 접두사λ₯Ό λΆ™μž…λ‹ˆλ‹€.
* 파슀칼 ν‘œκΈ°λ²• : 접두사와 단어λ₯Ό μ–Έμ–΄μŠ€μ½”μ–΄(_)둜 κ΅¬λΆ„ν•©λ‹ˆλ‹€.
* 낙타 ν‘œκΈ°λ²• : λ³€μˆ˜ μ΄λ¦„μ˜ 첫 κΈ€μžλŠ” μ†Œλ¬Έμžλ‘œ μ‹œμž‘ν•˜κ³ , κ·Έ λ‹€μŒ λ‹¨μ–΄λ“€μ˜ 첫 κΈ€μžλŠ” λŒ€λ¬Έμžλ‘œ μ‹œμž‘ν•©λ‹ˆλ‹€.

** 파슀칼, 낙타 ν‘œκΈ°λ²•μœΌλ‘œ λ³€μˆ˜ 섀정을 많이 ν•˜λŠ”κ²ƒ κ°™λ‹€.

 

 

 

 

 

λ¦¬ν„°λŸ΄ μ‚¬μš©ν•˜κΈ°

 

λ³€μˆ˜μ—λŠ” 직접 μ •μˆ˜ν˜• λ˜λŠ” λ¬Έμžμ—΄ 값을 μ €μž₯ν•  수 μžˆλŠ”λ°, 이 κ°’ 자체λ₯Ό λ¦¬ν„°λŸ΄μ΄λΌκ³  ν•©λ‹ˆλ‹€. λ¦¬ν„°λŸ΄ μ€‘μ—λŠ” κ°’ 자체λ₯Ό κ°€μ§€μ§€ μ•ŠλŠ” null λ¦¬ν„°λŸ΄λ„ μžˆμŠ΅λ‹ˆλ‹€. 

 

using System;

class Literal
{
	static void Main()
    {
    	Console.WriteLine(1234);
        Console.WriteLine(3.14F);
        Console.WriteLine('A');
        Console.WriteLine("Hello World!");
    }
}

 

 

 

 

 

μƒμˆ˜ μ‚¬μš©ν•˜κΈ°

 

λ³€μˆ˜λ₯Ό μ„ μ–Έν•  λ•Œ μ•žμ— const ν‚€μ›Œλ“œλ₯Ό 뢙이면 λ³€μˆ˜λŠ” μƒμˆ˜κ°€ λ©λ‹ˆλ‹€. μƒμˆ˜λ‘œ μ„ μ–Έλœ λ³€μˆ˜λŠ” λ‹€μ‹œ 값을 λ°”κΏ€ 수 μ—†κ³  λ°˜λ“œμ‹œ μ„ μ–Έκ³Ό μ΄ˆκΈ°ν™”κ°€ 이뀄져야 ν•©λ‹ˆλ‹€. constν‚€μ›Œλ“œλ₯Ό 뢙인 λ³€μˆ˜λ₯Ό μƒμˆ˜ λ˜λŠ” μ§€μ—­ μƒμˆ˜λΌκ³  ν•©λ‹ˆλ‹€.

 

usnin System;

class ConstantDemo
{
	static void Main()
    {
    	const int MAX = 100;
        Console.WriteLine("μ΅œλŒ€ 점수 : {0}", MAX);
    }
}

 

λ°˜μ‘ν˜•