C# Data Type
C#의 Data Type는 .NET Framework에 정의되어 있으며, 모두 객체로 정의되어 있다. 모든 Data Type는 System이라는 Namespace에 정의되어 있다. 모든 Data Type는 System.Object에서 파생된 System.Type로 부터 상속는다. C#에서 지원하는 Data Type은 MSDN에서 확인할 수 있다.
정수
| 타 입 |
실제이름 |
범위 |
| sbyte |
System.SByte |
-128 ~ 127 |
| byte |
System.Byte |
0 ~ 255 |
| char |
System.Char |
하나의 유니코드 문자. U+0000 ~ U+FFFF |
| short |
System.Int16 |
-32,768 ~ 32,767 |
| ushort |
System.UInt16 |
0 ~ 65,535 |
| int |
System.Int32 |
-2,147,483,648 ~ 2,147,483,647 |
| uint |
System.UInt32 |
0 ~ 4,294,967,295 |
| long |
System.Int64 |
-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 |
| ulong |
System.UInt64 |
0 ~ 18,446,744,073,709,551,615 |
실수
| 타 입 |
실제이름 |
정밀도 |
범 위 |
| float |
System.Single |
7개의 자릿수 |
±1.5 ×10~45 ~ ±3.4 × 1038 |
| Double |
System.Double |
15~16개의 자릿수 |
±5.0 ×10~324 ~ ±1.7 × 10308 |
| Decimal |
System.Decimal |
28~29개의 자릿수 |
1.0 ×10~28 ~ 7.9× 1028 |
그 외
| 타 입 |
실제이름 |
특 징 |
| Object |
System.Object |
모든 타입의 최상위 부모 클래스. C#에서 모든 객체들은 이 Object 클래스로부터 상속받는다. |
| String |
System.String |
문자열을 나타내는 타입이다. |
| Bool |
System.Boolean |
Boolean 값이며 참(true) 또는 거짓(false)를 나타낸다. |
기본값
Nullable 형태가 아닌 모든 변수는 값을 가지고 있어야 한다. 보통의 경우 정의되지 않은 변수를 사용하려고 하면 컴파일 에러를 내지만, 기본적으로는 각 변수들은 다음과 같은 기본 값을 가진다.
| 타 입 |
디폴트 값 |
| bool |
FALSE |
| byte |
0 |
| char |
'\0' |
| decimal |
0.0M |
| double |
0.0D |
| enum |
0 |
| float |
0.0F |
| int |
0 |
| long |
0L |
| sbyte |
0 |
| short |
0 |
| struct |
구조체안의 모든 타입은 그에 해당하는 디폴트 값으로 할당된다. |
| uint |
0 |
| ulong |
0 |
| ushort |
0 |