본문 바로가기

IT/ASP/ASP.NET

[ASP] Asp 문법 - 3 : 데이터타입과 형변환함수

아래의 문법 내용은 taeyo.pe.kr/Lecture의 강좌를 참고했음을 밝힘.


< 데이터타입 >


1. 숫자 서브 타입

 1-1. 정수(Integer) : 가장 일반적으로 쓰는 타입.

 1-2. 바이트(Byte) : 기본적인 숫자 연산에 활용.

 1-3. 긴 정수(Long) : Integer보다 큰 정수를 지원.

 1-4. 싱글(Single) : 단정도 부동소수점을 지원.


 1.5. 더블(Double) : 배정도 부동소수점을 지원.


 1.6. 통화(Currency) : 화폐 단위를 지원.

 -32,768 부터 32,767 까지 해당.

 0 부터 255 까지 해당.

 -2,147,483,647 부터 2,147,483,647 까지 해당.

 -3.402823E38 부터 -1.401298E-45 까지, 

      1.401298E-45 부터 3.402823E38 까지 해당.

 -1.79769313486232E308 부터 -4.94065645841247E-324 까지,

      4.94065645841247E-324 부터 1.79769313486232E308 까지.

 -922,337,203,685,447.5808 부터 922,337,203,685,477.5807 까지.


2. 문자열 서브 타입

 데이터 양 옆에 큰 따옴표(" ")를 붙여주는 것으로 문자열 데이터 타입을 지정할 수 있다. ex) "문자열 데이터"

 그 외 주의할 것은 Java와 크게 다를 것 없는 것 같음.


3. 날짜 서브 타입

 데이터 양 옆에 샾(#)을 붙여주는 것으로 날짜 데이터 타입을 지정할 수 있다. ex) "날짜 데이터"


4. 불린(boolean) 서브 타입

 Java의 boolean 데이터 타입과 동일. Asp에서 정수형으로 형변환 가능하며, 이 경우 TRUE는 -1, FALSE는 0의 값을 가진다.


5. Empty와 Null

 Empty : '비어있다'는 뜻으로, 데이터가 선언만 된 채 데이터가 할당되지 않는 상태인듯 함.

 Null : Asp에선 데이터베이스와 연동되어 사용되는 데이터 타입으로, 아무것도 아니고, 데이터타입도 아니며, 데이터를 가지지 않은 것.


< 데이터 타입 형변환 함수 >


해당 데이터 타입으로 형변환해주는 함수

 1. 숫자 서브 타입으로 형변환

 2. 문자열 서브 타입으로 형변환

 3. 날짜 서브 타입으로 형변환

 4. 불린 서브 타입으로 형변환

 5. 기타 형변환

 CInt, CLng, CByte, CSng, CDbl, CCur, Fix, Int, Abs

 CStr, Asc, AscB, AscW, Chr, ChrB, ChrW

 CDate, DateValue, TimeValue, DateSerial, TimeSerial

 CBool

 Hex, Oct, Sgn


1. 숫자 서브 타입 형변환 함수

 1-1. CInt, CLng

     각각 Integer, Long타입으로 인자로 제공된 데이터의 데이터 타입을 형변환.

     데이터 타입이 표시할 수 있는 범위를 넘어가면 오류가 발생함. 이는 모든 형변환에 동일하게 적용.

 1-2. CByte, CSng, CDbl, CCur

     각각 Byte, Single, Double, Curreny타입으로 데이터 타입 형변환.

     CSng은 소수점 둘째자리까지 표시하며, CLong은 보다 정확한 소수점 데이터 표현 가능.

     CCur은 소수점 다섯째자리에서 반올림. 곧, 결과값은 xx.xxxx가 된다.

 1-3. Fix, Int, Abs

     Fix와 Int 모두 소수점 이하를 버리고 정수값을 반환, 음수의 경우 Fix는 음수 소수점 이하 버림, Int는 음수 소수점 이하 반올림.

     Abs는 인자로 제공된 데이터의 절대값을 반환. ex) Abs(-3.5) = 3.5 , Abs(3.5) = 3.5


2. 문자열 서브 타입 형변환 함수

 2-1. CStr

     인자로 투입된 데이터를 문자열의 형태로 그대로 형변환.

 2-2. Asc, AscB, AscW

     문자열 첫 글자의 ANSI문자코드 반환.

     AscB는 Byte용, AscW는 32-비트 플랫폼의 UNICODE용.

 2-3. Chr, ChrB, ChrW

     ANSI문자코드를 인자로 받아 해당하는 문자를 반환. ChrB와 ChrW는 AscB와 AscW와 같음.

     Chr(34) = 큰따옴표(") , Chr(13) / Chr(10) = TextArea에서의 개행 역할을 수행.


3. 날짜 서브 타입 형변환 함수

 3-1. CDate

     데이터 타입을 날짜의 형태로 형변환. 반환되는 형식은 다음과 같다. "YYYY-MM-DD a(오전/오후) HH:mm:ss"

     ISDATE : 인자로 넘겨진 데이터가 날짜형 데이터 타입으로 형변환이 가능한지의 여부를 boolean값으로 반환.

 3-2. DateValue, TimeValue, DateSerial, TimeSerial

     DateValue와 DateSerial은 연-월-일을 반환, TimeValue와 TimeSerial은 시:분:초를 반환.

     -Value함수는 정해진 Date규격의 데이터를, -Serial은 세개의 정수 데이터를 받아 각각 연-월-일/시:분:초 에 바인딩 후 반환한다.


4. 불린 서브 타입 형변환 함수

 CBool함수는 참, 거짓을 판별하여 TRUE / FALSE값을 반환. 인자로 숫자 또는 유효한 식이 들어갈 수 있다.

     인자가 숫자인 경우 : CBool(0) = TRUE를, CBool(0이 아닌 숫자) = FALSE를 반환.

     인자가 식인 경우 : CBool("a" = "a") = TRUE를, CBool("a" = "b") = FALSE를 반환.


5. 기타 형변환 함수

 5-1. Hex (Hexadecimal)

     10진수 숫자 데이터를 인자로 넘겨줄 경우 16진수로 변환하여 반환.

 5-2. Oct (Octal)

     10진수 숫자 데이터를 인자로 넘겨줄 경우 8진수로 변환하여 반환.

 5-3. Sgn

     인자로 넘겨준 숫자 데이터의 부호를 반환. 양수라면 1을, 음수라면 -1을, 0이라면 0을 반환.

     ex) Sgn(52.3) = 1 , Sgn(-2) = -1 , Sgn(0) = 0