C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[37897] Re:비베소스에서 가져와서 변환중.. 혹시 아시는 분 계시면..
유영인 Cuperido [cuperido] 1205 읽음    2004-11-05 00:52
1. aaa는 스트링형, bbb는 Variant 형으로 자유자재로 형 변환이 가능한 형식입니다.
빌더 역시 Variant 형을 지원합니다.

bbb(105) 는 c에서 bbb[105] 처럼 105번째 배열을 뜻합니다. 그래서, 이진수가 들어갈지
다른 어떤값이 들어갈지는 그 전의 내용에 따라 틀리기 때문에 답변을 드릴수가 없습니다.

빌더에서 아래와 같이 작성을 한다면,

Variant           vaVariant;
int               itSum;

vaVariant = "5";
itSum = vaVariant + 1;

ShowMessage(IntToStr(itSum));

문자열 "5"는 자동으로 숫자로 인식되어, 결과 값은 6으로 출력됩니다.

빌더로 변환한다면

String aaa;
Variant bbb;

aaa = bbb[105];

이정도가 될 것 같습니다.


2. Mid는 기본적으로는 C++ 에는 지원하지 않습니다.
char *라면, 뒤를 NULL로 잘라주고 &str[2] 등과 같이 읽어내면 가능은 합니다.

빌더의 경우 AnsiString이 SubString이라는 명령을 지원합니다.
String.SubString(1, 2) 이런식으로 첫번째 글자부터 2글자를 가져온다. 라는 형식으로
사용할 수 있습니다.

Val은 StrToInt 명령입니다. 에러가 나지 않는 것으로 봐서 StrToIntDef(String, 0); 에
더 가까울지도 모르겠습니다. (VB소스에서 특별한 예외 처리가 없다면 StrToIntDef로 해주세요)

ccc = Val(Mid("0000000000001234", 1, 2));
이 문장은 "0000000000001234" 이라는 스트링에서 첫번째 글자부터 두글자를,
즉 "00" 을 정수로 변환 합니다. 즉, 그냥 0이 되는 것입니다.

빌더로 변환한다면,
ccc = StrToIntDef(String("0000000000001234").SubString(1, 2), 0);

이정도가 될 것 같습니다.


cuperido

초보 님이 쓰신 글 :
: 비주얼베이직으로 된 소스를 C++로 바꾸고 있는데요. 비베를 잘 몰라서.
: 비베쪽 사이트에도 질문을 올리던가, 책을 좀 찾아볼려고 합니다.
: 좀 급해서 혹시 아는 분이 계실까 여기다 적어봅니다.
: 혹시 비베쪽 아시는 분 계시면 도움을..
:
: < 1번 질문 >
:
: 비베소스 :
: Dim aaa As String
: Dim bbb As Variant
: ...
:
: aaa = bbb(105)
:
: 이렇게하면 aaa 에 이진수 같이 들어가던데.
: int to string같은 개념이 되나요? 그런데 왜 이진수로..
: 이것을 C++ 로 구현한다면 어떻게 해야할까요.
:
:
: < 2번 질문 >
: 비베소스 :
: ccc= Val(Mid("0000000000001234", 1, 2));
:
: ccc는 int형이구요. 이렇게하면 리턴값은  0  이 나옵니다.
: Mid가 중간값을 구하는 메소드입니까? 그런데 첫 인수가 스트링인데. 게다가 저 값은 이진수도 아니고.
: 도대체 어떻게 0 이란 값이 나오는건지. Mid가 어떤 다른 일을 하는 메소드인지.
: 그리고 저것을 C++로 구현한다면 어떤 함수를 써야 할까요.
:
:
: 아시는 분 계시면 도움을 부탁드립니다. 감사합니다.

+ -

관련 글 리스트
37893 비베소스에서 가져와서 변환중.. 혹시 아시는 분 계시면.. 초보 1098 2004/11/04
37897     Re:비베소스에서 가져와서 변환중.. 혹시 아시는 분 계시면.. 유영인 Cuperido 1205 2004/11/05
37918         1번질문의 Variant 내용은 그게 아닌것 같습니다. 다시질문.. 초보 774 2004/11/06
37925             Re:1번질문의 Variant 내용은 그게 아닌것 같습니다. 다시질문.. cuperido 973 2004/11/07
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.