woojin++
C# 기초 다지기 - 값형식과 참조형식 본문
변수는 저장된 값의 메모리 주소입니다.
프로그램이 실행되면 크게 2개의 메모리 영역을 사용한다.
첫번째 메모리 영역의 이름은 스택 메모리입니다.
스택은 가장 나중에 넣은 데이터를 가장 먼저 꺼내는 선형적 구조입니다.
두번째 메모리 영역의 이름은 힙 메모리입니다.
힙은 계층적 구조입니다. 임의의 순서로 저장됩니다.
변수가 선언되면 스택 메모리에 공간이 할당됩니다.
변수에 값을 할당 한다는 것은 메모리에 값을 저장한다는 뜻입니다.
모든 값이 스택 메모리에 저장되는것은 아닙니다.
어떤 값들은 힙 메모리에 저장됩니다.
스택에 값이 직접 저장되는 형식을 값형식이라 부릅니다.
힙에 값이 저장되는 형식을 참조 형식이라 부릅니다.
참조형식은 스택과 힙 메모리 모두를 사용합니다.
힙에는 값을 스택에는 값의 주소를 저장합니다.
값을 참조한다고 해서 참조 형식이라 부릅니다.
값형식은 다음과 같습니다.
int, float, char, bool, enum
값형식은 스택에 값이 직접 저장됩니다.
참조형식은 다음과 같습니다.
string, object
참조형식의 값은 힙메모리에 값의 주소는 스택에 저장됩니다.

null 키워드는 개체를 참조하지 않는 null 참조를 나타내는 리터널입니다.
리터널이란 , 소스코드의 고정된 값
즉, null 은 아무것도 참조하지 않는 값
null 은 참조 형식 변수의 기본값입니다.
값은 변수에 할당 가능
string은 참조형식
그러므로 string 변수에 null값 할당 가능
string name= null;
바로 이런 상태죠
