변수

1. 변수란?
값을 담아두기 위한 자리에 이름을 붙인 것
| 단계 | 하는 일 |
|---|---|
| 선언(declaration) | 어떤 자료형의 값을 담을 자리를 만들고 이름을 붙입니다 |
| 대입(assignment) | 그 자리에 값을 넣습니다 |
- 문법 형식 : <자료형> <변수명> = <값>;
ex)int hp = 100;
csharp
int a = 50; // a의 값이 무엇을 뜻하는지 모름 > 안좋은 예시
int Health = 5; // 선언과 대입
int number; // 선언
number = 15; // 대입(초기화)
Console.WriteLine(number); // 출력 : 15
number = 2314;
Console.WriteLine(number); // 출력 : 2314
위와 같이 변수 하나는 한 시점에 값 하나만 담기 때문에 새 값을 넣으면 이전 값은 사라집니다.
1-1) 변수 선언의 규칙
C#이 강제하는 규칙은 다음과 같습니다.
- 첫 글자는 문자 또는 밑줄( _ )이어야 합니다.
- 숫자로 시작할 수 없습니다.
- 두 번째 글자부터는 문자·숫자·밑줄을 쓸 수 있습니다.
- 공백과 특수 문자를 쓸 수 없습니다.
- int, class, true 같은 C# 키워드를 그대로 쓸 수 없습니다.
- 대문자와 소문자를 다른 글자로 구분합니다.
csharp
int 2ndPlayer = 2; // 오류: 숫자로 시작할 수 없습니다
int player level = 1; // 오류: 공백을 쓸 수 없습니다
int class = 1; // 오류: 키워드를 이름으로 쓸 수 없습니다
1-2) 스코프와 생명주기
{ }로 묶인 범위를 스코프 혹은 블록범위라고 부릅니다. 블록안에서 선언한 변수는 그 블록이 끝나는 지점까지만 살아있습니다.
변수가 만들어져 사라지기까지를 생명주기라고 합니다.
csharp
int a = 5;
{
int b = 10;
} // 변수 b의 생명주기는 여기까지
Console.WriteLine(a + b); // b의 정보가 없어 오류발생
