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
[2705] [답변] BJEANS/ AnsiString형을 int로.../프포
만해 [ ] 3896 읽음    2000-01-13 11:34
안녕하세요 만해 랍니다~

오랜만에 뵙네요

1차 휴가 나와 있는중입니다~

그럼 답변을 드리겠습니다.

BCB의 헬프에서 AnsiString을 입력해서 그 하위 메소드를 검색 하면

ToInt()라는 함수가 있는걸 찾을수 있을 겁니다

이게 바로 AnsiString형 자료를 Int자료형으로 바꾸는 역활을

하는 함수(정확히는 메소드이지요)입니다.

하지만 이것도 약간의 문제가 있지요

밑의 소스를 예를 들꼐요

void __fastcall test()
{
AnsiString S;

  S = "10";

AnsiString ExpS;
int i.j;

  i = S.ToInt();
  // 위의 구문은 아무 이상없이 실행이 됩니다

  ExpS="";
  j = ExpS.ToInt();
  // 위 구문 실행이 Run Time 에러가 나네요

  // 그 이유는 ExpS라는 변수값이 아무것도 없는 상태인데
  // 말하자면 ExpS의 값은 ""이지요
  // 그런데 Int형 값에는 ""값이 없습니다.
  // 이 상태에서 Run time "" is not integer value라는 값이 나올껍니다.
  // 이와 마찬가지로 AnsiString으로 정의된 변수의 값이 Int형으로
  // 변환이 가능한 값이라면 ToInt()함수로 변환이 가능하나
  // 예의 경우와 같이 ""거나 영문자가 포함되어 있다면
  // 런타임 오류를 일으킵니다
  // 해결책은 변환하기전에 변환할려는 값이 합당한것인지 체크하는 루틴을 삽입 하세요
}

좋은 답변이 되었는지 모르겠네요

그럼 이만~


+ -

관련 글 리스트
2684 [질문] AnsiString형을 int로.../프포 bjeans 3876 2000/01/12
2705     [답변] BJEANS/ AnsiString형을 int로.../프포 만해 3896 2000/01/13
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.