C#에서 sizeof() 연산자는 특정 데이터 유형이 메모리에서 차지하는 크기를 바이트(byte) 단위로 반환합니다. 프로그램의 메모리 사용량을 최적화하거나 저수준 프로그래밍을 할 때 유용하게 활용할 수 있습니다.
sizeof() 기본 문법
예를 들어, int 데이터 유형의 크기를 알고 싶다면 다음과 같이 작성합니다.
sizeof(int);
double 데이터 유형의 크기를 구하려면 아래와 같이 사용합니다.
sizeof(double);
다양한 데이터 유형의 크기 확인 예제
다음은 여러 데이터 유형의 크기를 한 번에 확인하는 완전한 예제 코드입니다.
예제 코드
using System;
namespace Demo {
class Program {
static void Main(string[] args) {
Console.WriteLine("int의 크기: {0}", sizeof(int));
Console.WriteLine("char의 크기: {0}", sizeof(char));
Console.WriteLine("short의 크기: {0}", sizeof(short));
Console.WriteLine("long의 크기: {0}", sizeof(long));
Console.WriteLine("double의 크기: {0}", sizeof(double));
Console.ReadLine();
}
}
}실행 결과
int의 크기: 4 char의 크기: 2 short의 크기: 2 long의 크기: 8 double의 크기: 8
주요 데이터 유형별 크기 정리
- int: 4바이트
- char: 2바이트 (유니코드 문자)
- short: 2바이트
- long: 8바이트
- double: 8바이트
참고 사항
sizeof() 연산자는 unsafe 컨텍스트 없이도 기본 제공 타입(built-in type)에 대해 사용할 수 있습니다. 다만 사용자 정의 구조체(struct)의 크기를 구하려면 unsafe 블록 내에서 Marshal.SizeOf() 또는 unsafe 버전의 sizeof()를 사용해야 합니다.