티스토리 뷰
1. Data Type
1) CTS (Common Type System의 약자어다.) - 공통 타입 시스템-
- 닷넷 프레임 워크에서 여러다른 언어와 동일하게 데이터형 사용을
유도하기 위해 정의해놓은 것이다.
CTS란?
-> 닷넷은 모든 데이터형을 객체로 정의 해놓은 CTS를 통해 언어마다 자신의 데이터형을 따로
사용 하지 않고 언어 통합성을 구현하여, 어떤 형식의 데이터형을 사용해도 서로 통합될 수
있도록, 언어나 시스템 환경에 관계없이 동일한 데이터 형이 유지될 수 있는 CTS를
만들어 놓게 되었다.
-> CLR의 중요한 부분 중 하나이며,
CTS에서 정의하는 데이터 형은 크게 값 형과 첨조 형으로 분류된다.
⑴ 값 형 (Value Type)
- 값 형은 데이터를 메모리의 스택(stack)에 할당되어 직접 저장하는 값을 뜻한다.
예제) 값 형 알아보기.
int i = 1 ; -> i 가 1이라고 변수에 지정한다.
int j = i ; -> j 가 i의 값을 가져와 변수에 1이라고 정의한다.
i = i + 1 ; -> i에 1을 더해도 j의 값은 2라고 나오는것이 아니라. 1이라고 나오게된다.
값형은 독자적으로 데이터의 복사본을 가지고 있기 때문에 서로에게 영향을 주지 않는다.
그렇기 때문에 마지막에 했던 i에 1을 더해도 j는 아무런 영향을 받지 않는다.
- 값형 변수는 자신에게 활당된 메모리 영역에 값을 직접 저장한다.
⑵ 참조 형 (Reference Type)
- 참조 형은 실제 저장하는 데이터 값을 메모리의 힙(Heap)영역에 저장하는 값을 뜻한다.
예제) 참조 형 알아보기.
class Class1
{
public void Ref(ref int i, ref int j)
{
i++;
j++;
}
}
class Class2
{
public static void Main(string[] args)
{
Class1 cs = new Class1();
int i = 1;
int j = 2;
Console.WriteLine("int i의 값은 : {0}", i); // 1 출력
Console.WriteLine("int j의 값은 : {0}", j); // 2 출력
cs.Ref(ref i, ref j);
Console.WriteLine("int i의 값은 : {0}", i); // 2 출력
Console.WriteLine("int j의 값은 : {0}", j); // 3 출력
}
}
실제 저장 되어있는 데이터 값을 메모리의 힙영역에서 저장한다.
-실제 데이터는 별도의 메모리 영역에 저장된다.
참조형은 참조형에서 값을 변경하면 가리키고 있는 데이터의 값까지 바뀌는 것이다.
2) 내장형 데이터
-> 값형에는 내장형 데이터와 사용자 정의 데이터가 존재한다. 그중.
내장형 데이터는 크게 숫자형과 문자형 그리고 불리언형, 이렇게 3가지로 나뉜다.
그리고 C#에서는 나름대로 테이더 타입을 정의해서 두고 있는데 이 모든것은
CLS의 규칙을 전제로 만든것들이다.
System 데이터 타입인 내장형 테이터 타입.
분류 | 키워드 | 구조체형 | 크기 (바이트) |
범위 | 설명 |
숫자형 (정수형) |
SByte | System.Sbyte | 1 | -128에서 127까지 | 부호있는 8비트 |
byte | System.Byte | 1 | 0에서 255까지 | 부호있는 8비트 | |
short | System.Int16 | 2 | -32,768에서 32,767까지 | 부호있는 16비트 | |
ushort | System.Uint16 | 2 | 0에서 65,535까지 | 부호있는 16비트 | |
int | System.int32 | 4 | -2,147,483,648에서 2,147,483,647까지 |
부호있는 32비트 | |
uint | System.Uint32 | 4 | 0에서 4,294,967,295까지 | 부호있는 32비트 | |
long | System.int64 | 8 | -9,223,372,036,854,775,808에서 9,223,372,036,854,775,807까지 |
부호있는 64비트 | |
ulong | System.Uint64 | 8 | 0에서 18,446,744,073,709,551,615 |
부호있는 64비트 | |
문자형 | char | System.Char | 2 | U+0000에서 U+ffff까지 | 16비트 유니코드 문자 |
숫자형 (실수형) |
float | System.Single | 4 | 32비트 부동 소수점 | |
double | System.Double | 8 | 64비트 부동 소수점 | ||
decimal | System.Decimal | 16 | 부호있는 96비트 | ||
문자 열형 |
string | System.String | 시스템의 메모리가 지원할 수 있을 때까지 |
유니코드로 조합 가능한 모든 문자 | |
불리 언형 |
bool | System.Boolean | 1(비트) | true 혹은 false | 진위판단 |
Object | System.Object | 모든범위를 담고 있는 어머니격 | 모든 타입들의 기본 클래스 |
- 자바스크립트
- c#
- ASP
- 지진속보
- SQL
- 화재
- 백선생
- 4차산업혁명
- 서울 데이트코스
- C#기초
- 볼빨간사춘기
- 집밥백선생
- 마이리틀
- MSSQL
- 집밥 백선생
- DateTime
- 함수
- clr
- 장범준
- 지진
- JavaScript
- 데이트
- 레시피
- 서울 데이트
- 엔플라잉
- MS-SQL
- ASP.NET
- 서울데이트 코스
- 집밥
- 백종원
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- Total
- Today
- Yesterday