빠르게 태그호이어 리뷰 후 책을 펼쳤습니다 



회사 프로젝트때문에 평일에는 C# 포스팅을 못했기 때문에



주말을 이용해 올려보려 해요



책의 구조상 첫단원은 컴퓨터의 구조 원리 역사를 다루는 내용이라 스킵하고



2단원 내용이었던 HelloWorld도 책 분량에 비하면 정말 간결히 끝내버렸어요 



날로 먹는거 같지만 벌써 3단원인데요 ㅎㅎㅎ 



3단원은 데이터 관리 및 보관법에 대해 알려주고 있어요 



프로그래밍에선 데이터가 아주 중요한 역할을 하거든요 



지금부터 알아보도록 해요 



일단 데이터란 정보를 가지고 있다는의미인데 종류가 다양합니다 



데이터 형식에는 기본 데이터 형식이 있고 



복합 데이터 형식이라는게 있습니다



복합데이터란 구조체나 클래스 배열 등이 포함되는데 여러 형태의 데이터들이 복합적으로 이루어져 있는 데이터를 말합니다



또한 값 형식과 참조 형식으로 나누어져있죠 



프로그래밍에선 데이터에 접근을 하려면 변수라는것을 알아야합니다



가장 흔히 쓰는 int i; 라고 선언을 해볼께요 



int는 데이터의 형식을 말하고 i 는 변수의 이름이 됩니다 



이렇게 선언을 해주면 i라는 녀석이 어느 메모리 공간에 자리를 차지하겠죠?



또한 변수에는 값을 넣을 수 있는데요 



아까 선언한 i에 100이라는 숫자를 주고 싶으면 



i = 100; 처럼 쓰시면 되요 



그럼 이 100이라는 값이 i가 차지하고 있는 메모리 공간에 기록이 될꺼에요 



아까 값형식과 참조형식이라 했는데 



이 두개로 나뉘는건 메모리 영역이 달라서입니다



하나는 스택 하나는 이라고 합니다 


  

    

1
2
3
4
5
{
    int a = 100;
    int b = 200;
    int c = 300;
}
cs

좌측 코드를 보면 순서대로 a에 100이 b에 200이 c에 300이 들어갈텐데요 



스택은 차례대로 100이 자리를 차지하고 그다음 메모리에 200 다음 메모리에 300이 들어갑니다 



빠져나갈때는 300 200 100 순서대로구요 



위의 방식이 값형식 즉 스택을 나타냅니다



힙이란 가비지컬렉터라는걸 포함하는데요 사용하지 않는 객체가 있다면 



쓰레기로 간주하여 지우는 역할을 합니다



1
2
3
4
{
    object a = 100;
    object b = 200;
}
cs



좌측 코드를 보면 object라는 변수를 선언했는데요



실제 값은 힙에 저장이됩니다 



a와 b의 값이 저장된 힙의 주소만 스택이 가지고 있죠 



C#에서 제공하는 기본데이터형식은 15가지인데 



문자열과 오브젝트 형식만 참조형식을 따르며 나머지는 값형식을 따릅니다 




마이크로소프트 .NET 참조




byte는 부호없는 정수 크기는 1바이트입니다 



여기서 1바이트는 8bit로 구성되어있으며 2^8개인 0~255까지의 256의 데이터를 담을 수 있습니다 



sbyte란 byte에서 signed 즉 부호화된 데이터를 말하는데요 



byte를 절반 쪼개어 -와 +가 나눠가지는겁니다 



-128~127까지 표현이 가능해요 



short는 말 그대로 숏트 짧다는 뜻인데요 



2byte를 가지며 -32,768 ~ 32,767까지 표현이 가능해요



ushort는 short를 비부호화 unsigned 한 데이터고 



0~65,535까지 표현합니다 



예로 사용했던 int 형은 4byte 



uint도 마찬가지 



long과 ulong은 8byte 



char는 2byte입니다 



급히 쓰다보니 가독성도 떨어지고 하는데 추후 표와 그림으로 읽기 쉽게 정리하도록 하겠습니다 









'Programming > C#' 카테고리의 다른 글

다시 시작합니다  (0) 2018.11.08
프로그램 뜯어보기  (0) 2018.08.19
Hello World  (0) 2018.08.19
C# 시작합니다.  (0) 2018.08.18

+ Recent posts