베이직 편집하기

이동: 둘러보기, 검색

경고: 로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다. 로그인하거나 계정을 생성하면 편집자가 아이디(ID)으로 기록되고, 다른 장점도 있습니다.

편집을 되돌릴 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 저장해주세요.
최신판 당신의 편집
43번째 줄: 43번째 줄:
 
===다른 언어와의 비교===
 
===다른 언어와의 비교===
 
# C 언어에서 가능한 [[다중 할당]]은 불가능하다. 비주얼 베이직에서 코드 A = B = C 는 변수 A, B, C의 값을 같게 하지 않는다. "Is B = C?" 불린 결과값이 A에 들어간다.[3] 결국 A에 들어가는 결과치는 거짓(0) 또는 참(-1)이 될 것이다.
 
# C 언어에서 가능한 [[다중 할당]]은 불가능하다. 비주얼 베이직에서 코드 A = B = C 는 변수 A, B, C의 값을 같게 하지 않는다. "Is B = C?" 불린 결과값이 A에 들어간다.[3] 결국 A에 들어가는 결과치는 거짓(0) 또는 참(-1)이 될 것이다.
# [[불린]] [[상수]] True는 숫자값 -1을 갖는다. 이렇게 처리하는 이유는, 비주얼 베이직에서 불린 자료형은 16비트 부호 있는 정수 형태로 저장되기 때문이다. 이 구조에서 -1은 16진수 1로 계산되고(불린 값은 True이다), 0은 16진수 0으로 계산된다.(불린 값은 [[False]]이다.) 이것은 16비트 부호 있는 정수값 0인 Not 연산을 할 때 정수값 -1을 반환하는 것을 통해 명백하게 설명되는데, 다시 말해 True = Not False이다. 이러한 비주얼 베이직의 고유한 처리 방식은[[ And]], [[Or]], [[Xor]], [[Not]]과 같은 정수 비트의 논리 연산에 유용하다. 이러한 True의 정의는 1970년대 마이크로소프트가 만들었던 베이직 제품에서의 처리와 일치하며, 이것은 당시의 [[CPU]] 명령어의 특성과 관련이 있다.
+
# [[불린 상수]] True는 숫자값 -1을 갖는다.[4] 이렇게 처리하는 이유는, 비주얼 베이직에서 불린 자료형은 16비트 부호 있는 정수 형태로 저장되기 때문이다. 이 구조에서 -1은 16진수 1로 계산되고(불린 값은 True이다), 0은 16진수 0으로 계산된다.(불린 값은 [[False]]이다.) 이것은 16비트 부호 있는 정수값 0인 Not 연산을 할 때 정수값 -1을 반환하는 것을 통해 명백하게 설명되는데, 다시 말해 True = Not False이다. 이러한 비주얼 베이직의 고유한 처리 방식은[[ And]], [[Or]], [[Xor]], [[Not]]과 같은 정수 비트의 논리 연산에 유용하다. 이러한 True의 정의는 1970년대 마이크로소프트가 만들었던 베이직 제품에서의 처리와 일치하며, 이것은 당시의 [[CPU]] 명령어의 특성과 관련이 있다.
 
# [[논리]] 및 [[비트 연산자]]가 통합되어 있다. 이것은 논리 연산자와 비트 연산자가 구분되어 있는 [[펄]]과 같은 C 언어 계열의 언어와는 다르다. 이 요소는 베이직언어의 전통적인 특징이기도 하다.
 
# [[논리]] 및 [[비트 연산자]]가 통합되어 있다. 이것은 논리 연산자와 비트 연산자가 구분되어 있는 [[펄]]과 같은 C 언어 계열의 언어와는 다르다. 이 요소는 베이직언어의 전통적인 특징이기도 하다.
 
# [[가변 배열]] 기반이다. 배열의 정의는 [[파스칼]]이나 [[포트란]]과 같이, 유사한 [[최대 인덱스(Upper Bound)]]와 [[최소 인덱스(Lower Bound)]]의 지정을 통해 이루어진다. 또한 [[Option Base]] 구문을 통해 최소 인덱스의 지정을 할 수 있다. Option Base 문의 사용은 비주얼 베이직 코드를 볼 때 혼란을 야기할 수 있는데, 이것을 피하는 최선의 방법은 언제나 명시적으로 배열의 최소 인덱스를 지정하는 것이다. 이 최소 인덱스는 0 또는 1뿐만 아니라, 선언에 따라서는 다른 값이 될 수도 있기 때문이다. 이러한 방법으로, 최소 인덱스와 최대 인덱스 모두 프로그래머의 제어가 가능하다. 대조적으로, [[서브스크립트 제한적 언어(Subscript-Limited Language)]]들에서, 배열의 최소 인덱스는 가변적이지 않다. 이러한 독특한 특성은 비주얼 베이직 닷넷에서도 나타나지만, 비주얼 베이직 스크립트에는 없다. [[OPTION BASE]] 는 1970년대 후반 [[ANSI Minimal BASIC]]을 통해 표준으로 지정되었다.
 
# [[가변 배열]] 기반이다. 배열의 정의는 [[파스칼]]이나 [[포트란]]과 같이, 유사한 [[최대 인덱스(Upper Bound)]]와 [[최소 인덱스(Lower Bound)]]의 지정을 통해 이루어진다. 또한 [[Option Base]] 구문을 통해 최소 인덱스의 지정을 할 수 있다. Option Base 문의 사용은 비주얼 베이직 코드를 볼 때 혼란을 야기할 수 있는데, 이것을 피하는 최선의 방법은 언제나 명시적으로 배열의 최소 인덱스를 지정하는 것이다. 이 최소 인덱스는 0 또는 1뿐만 아니라, 선언에 따라서는 다른 값이 될 수도 있기 때문이다. 이러한 방법으로, 최소 인덱스와 최대 인덱스 모두 프로그래머의 제어가 가능하다. 대조적으로, [[서브스크립트 제한적 언어(Subscript-Limited Language)]]들에서, 배열의 최소 인덱스는 가변적이지 않다. 이러한 독특한 특성은 비주얼 베이직 닷넷에서도 나타나지만, 비주얼 베이직 스크립트에는 없다. [[OPTION BASE]] 는 1970년대 후반 [[ANSI Minimal BASIC]]을 통해 표준으로 지정되었다.

위키원에서의 모든 기여는 다른 기여자가 편집, 수정, 삭제할 수 있다는 점을 유의해 주세요. 만약 여기에 동의하지 않는다면, 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다 (자세한 사항은 위키원:저작권 문서를 보세요). 저작권이 있는 내용을 허가 없이 저장하지 마세요!

취소 | 편집 도움말 (새 창에서 열림)