D 프로그래밍-데이터 유형
D 프로그래밍 언어에서 데이터 유형은 다양한 유형의 변수 또는 함수를 선언하는 데 사용되는 광범위한 시스템을 나타냅니다. 변수 유형은 저장 공간에서 차지하는 공간의 양과 저장된 비트 패턴이 해석되는 방식을 결정합니다.
D의 유형은 다음과 같이 분류 할 수 있습니다.
Sr. 아니. | 유형 및 설명 |
---|---|
1 | Basic Types 이들은 산술 유형이며 (a) 정수, (b) 부동 소수점 및 (c) 문자의 세 가지 유형으로 구성됩니다. |
2 | Enumerated types 그들은 다시 산술 유형입니다. 프로그램 전체에서 특정 이산 정수 값에만 할당 할 수있는 변수를 정의하는 데 사용됩니다. |
삼 | The type void 유형 지정자 void 는 사용 가능한 값이 없음을 나타냅니다. |
4 | Derived types 여기에는 (a) 포인터 유형, (b) 배열 유형, (c) 구조 유형, (d) 공용체 유형 및 (e) 함수 유형이 포함됩니다. |
배열 유형 및 구조 유형을 집합 적으로 집계 유형이라고합니다. 함수의 유형은 함수의 반환 값 유형을 지정합니다. 다음 섹션에서 기본 유형을 살펴보고 다른 유형은 다음 장에서 다룰 것입니다.
정수 유형
다음 표는 저장 크기 및 값 범위와 함께 표준 정수 유형을 나열합니다.
유형 | 저장 크기 | 값 범위 |
---|---|---|
부울 | 1 바이트 | 거짓 또는 참 |
바이트 | 1 바이트 | -128에서 127 |
ubyte | 1 바이트 | 0에서 255 |
int | 4 바이트 | -2,147,483,648에서 2,147,483,647 |
단위 | 4 바이트 | 0에서 4,294,967,295 |
짧은 | 2 바이트 | -32,768에서 32,767 |
ushort | 2 바이트 | 0에서 65,535 |
긴 | 8 바이트 | -9223372036854775808 ~ 9223372036854775807 |
울롱 | 8 바이트 | 0에서 18446744073709551615 |
유형 또는 변수의 정확한 크기를 얻으려면 sizeof운영자. type. (sizeof) 표현식 은 객체 또는 유형의 스토리지 크기 (바이트 )를 산출합니다. 다음 예제는 모든 시스템에서 int 유형의 크기를 가져옵니다.
import std.stdio;
int main() {
writeln("Length in bytes: ", ulong.sizeof);
return 0;
}
위의 프로그램을 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다.
Length in bytes: 8
부동 소수점 유형
다음 표는 저장 크기, 값 범위 및 용도와 함께 표준 부동 소수점 유형을 언급합니다.
유형 | 저장 크기 | 값 범위 | 목적 |
---|---|---|---|
흙손 | 4 바이트 | 1.17549e-38에서 3.40282e + 38 | 소수점 6 자리 |
더블 | 8 바이트 | 2.22507e-308 ~ 1.79769e + 308 | 소수점 이하 15 자리 |
레알 | 10 바이트 | 3.3621e-4932 ~ 1.18973e + 4932 | 하드웨어가 지원하는 가장 큰 부동 소수점 유형 또는 double; 더 큰 |
ifloat | 4 바이트 | 1.17549e-38i ~ 3.40282e + 38i | 허수 값 유형의 부동 소수점 |
idouble | 8 바이트 | 2.22507e-308i에서 1.79769e + 308i로 | double의 허수 값 유형 |
ireal | 10 바이트 | 3.3621e-4932 ~ 1.18973e + 4932 | 실수의 가상 값 유형 |
cfloat | 8 바이트 | 1.17549e-38 + 1.17549e-38i에서 3.40282e + 38 + 3.40282e + 38i로 | 두 개의 수레로 구성된 복소수 유형 |
cdouble | 16 바이트 | 2.22507e-308 + 2.22507e-308i에서 1.79769e + 308 + 1.79769e + 308i로 | 두 개의 복식으로 구성된 복소수 유형 |
creal | 20 바이트 | 3.3621e-4932 + 3.3621e-4932i에서 1.18973e + 4932 + 1.18973e + 4932i로 | 두 개의 실수로 구성된 복소수 유형 |
다음 예제는 float 유형과 범위 값이 차지하는 저장 공간을 인쇄합니다.
import std.stdio;
int main() {
writeln("Length in bytes: ", float.sizeof);
return 0;
}
위의 프로그램을 컴파일하고 실행하면 Linux에서 다음과 같은 결과가 생성됩니다.
Length in bytes: 4
문자 유형
다음 표에는 저장소 크기 및 용도와 함께 표준 문자 유형이 나열되어 있습니다.
유형 | 저장 크기 | 목적 |
---|---|---|
숯 | 1 바이트 | UTF-8 코드 단위 |
wchar | 2 바이트 | UTF-16 코드 단위 |
dchar | 4 바이트 | UTF-32 코드 단위 및 유니 코드 코드 포인트 |
다음 예제는 char 유형이 차지하는 저장 공간을 인쇄합니다.
import std.stdio;
int main() {
writeln("Length in bytes: ", char.sizeof);
return 0;
}
위의 프로그램을 컴파일하고 실행하면 다음과 같은 결과가 생성됩니다.
Length in bytes: 1
무효 유형
void 유형은 사용 가능한 값이 없음을 지정합니다. 두 가지 상황에서 사용됩니다.
Sr. 아니. | 유형 및 설명 |
---|---|
1 | Function returns as void D에는 값을 반환하지 않거나 void를 반환한다고 말할 수있는 다양한 함수가 있습니다. 반환 값이없는 함수는 반환 유형이 void입니다. 예를 들면void exit (int status); |
2 | Function arguments as void D에는 매개 변수를 허용하지 않는 다양한 기능이 있습니다. 매개 변수가없는 함수는 void로 받아 들일 수 있습니다. 예를 들면int rand(void); |
이 시점에서 void 유형을 이해하지 못할 수 있으므로 계속 진행하고 다음 장에서 이러한 개념을 다룰 것입니다.