형변환 함수 (Type Conversion)
CUBLOC2에서 지원하는 변수 타입은 아래 5가지입니다.
| 타입 | 설명 | 범위 |
|---|---|---|
| Byte | 8비트 부호 없는 정수 | 0 ~ 255 |
| Integer | 32비트 부호 있는 정수 | -2,147,483,648 ~ 2,147,483,647 |
| Single | 32비트 부동 소수점 실수 | ±3.402823E+38 |
| Long | 64비트 부호 있는 정수 | -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 |
| Double | 64비트 부동 소수점 실수 | ±1.7976931348623157E+308 |
형변환 함수를 사용하면 서로 다른 타입의 변수 간에 값을 변환할 수 있습니다.
숫자형 변환 함수
| 함수 | 설명 | 입력 타입 | 결과 타입 | 사용 예 |
|---|---|---|---|---|
| Cbyte | 값을 Byte로 변환합니다. 0 ~ 255 범위를 벗어나면 하위 8비트만 취합니다. | Integer, Single, Long, Double | Byte | Bres = Cbyte(Ival) |
| Cint | 값을 Integer로 변환합니다. Single/Double 입력 시 소수점 이하는 버림합니다. | Byte, Single, Long, Double | Integer | Ires = Cint(Fval) |
| Csng | 값을 Single 실수로 변환합니다. | Byte, Integer, Long, Double | Single | Fres = Csng(Ival) |
| Clng | 값을 Long으로 변환합니다. Single/Double 입력 시 소수점 이하는 버림합니다. | Byte, Integer, Single, Double | Long | Lres = Clng(Ival) |
| Cdbl | 값을 Double 실수로 변환합니다. | Byte, Integer, Single, Long | Double | Dres = Cdbl(Ival) |
주의:Cbyte변환 시 입력값이 0 ~ 255 범위를 벗어나면 예상치 못한 값이 저장될 수 있습니다. 변환 전에 범위를 확인하십시오.
참고:Cint또는Clng로 실수를 변환할 때 소수점 이하는 버림 처리됩니다. 반올림이 필요한 경우Round함수를 먼저 적용하십시오.
문자열 변환 함수
CUBLOC2에서는 독립된 String 변수형을 지원하지 않습니다. 문자열은 1차원 Byte 배열로 관리되며, 배열의 끝에는 Null(0x00) 문자가 자동으로 삽입됩니다.
| 함수 | 설명 | 입력 타입 | 결과 타입 | 사용 예 |
|---|---|---|---|---|
| Cstr | 숫자 값을 문자열(Byte 배열)로 변환합니다. | Byte, Integer, Single, Long, Double | Byte 배열 | Cstr(Ival, Sarr()) |
| Val | Byte 배열에 저장된 문자열을 정수로 변환합니다. 변환할 수 없는 문자가 포함된 경우 0을 반환합니다. | Byte 배열 | Integer | Ires = Val(Sarr()) |
사용예
Dim Str(50) As Byte Dim i As Integer, j As Integer Wait 500 i = 1234 Cstr(i,Str()) ' i를 변환한 결과가 str배열에 저장됨, 맨뒤에 Null까지 저장됨. Debug Str(),Cr ' Debug창에 1234가 출력됨 j = Val(Str()) ' 문자열 1234+Null을 다시 숫자로 바꿔서 j에 저장 Debug Dec? j,Cr ' Debug창에 j=1234가 출력됨
사용예에서 선언한 변수들
위 사용 예에서 사용한 변수 타입은 다음과 같습니다.
Bval: Byte형 입력 변수 (Dim Bval As Byte)Ival: Integer형 입력 변수 (Dim Ival As Integer)Fval: Single형 입력 변수 (Dim Fval As Single)Lval: Long형 입력 변수 (Dim Lval As Long)Dval: Double형 입력 변수 (Dim Dval As Double)Bres: Byte형 결과 변수 (Dim Bres As Byte)Ires: Integer형 결과 변수 (Dim Ires As Integer)Fres: Single형 결과 변수 (Dim Fres As Single)Lres: Long형 결과 변수 (Dim Lres As Long)Dres: Double형 결과 변수 (Dim Dres As Double)Sarr(): 문자열을 담는 1차원 Byte 배열 (Dim Sarr() As Byte)
