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
[55248] Re:Re:AnsiString 와 char * 비교 부탁드립니다.
민간돼지 [hcson119] 1339 읽음    2008-11-24 08:35
감사합니다. ^^
근데 전 값이 틀리게 나와서요 ㅎㅎ
공부 좀 더 해야겠어요 ...
답변 다시 한 번 감사드려요

아제나 님이 쓰신 글 :
: 뭐가 틀리지? 하고 저도 해보니까, 이상 없이 되는데요.
:
: void __fastcall TForm1::Button1Click(TObject *Sender)
: {
:   char *Data = Edit1->Text.c_str();
:
:   int Len = StrLen(Edit1->Text.c_str());
:
:   for( int i=0 ; i<Len ; i++ )
:     if( ! ( '0' <= Data[i] && Data[i] <= '9' ) )
:     {
:       ShowMessage( "숫자만 입력하세요." );
:       return;
:     }
: }
:
: 폼에 TEdit 하나 올리고 TButton 하나 올려서 작성한 겁니다.
:
: 정상적으로 동작하는데요... 흠....
:
: 아마 사용하시는 빌더 버젼의 버그로 보입니다.
:
: 저는 터보씨빌더 쓰고 있습니다.
:
: 그리고 숫자인지 비교하실 때는 문자열을 숫자로 바꾸는 AnsiString의 맴버함수가 있습니다.
:
:   if( Edit1->Text.ToIntDef(0) != Edit1->Text.ToIntDef(1) )
:     ShowMessage( "숫자만 입력하세요." );
:
: 이렇게 단 두줄에 해결됩니다.
:
: 수고하세요.. 흠...
:
:
: 민간돼지 님이 쓰신 글 :
: : 아래와 같이 실행하면 Data값이 제대로 나오는데요
: : //////////////////////////////////////////////////////////////////
: :     AnsiString TESTData;
: :     TESTData = vEditInterval->Text;
: :     char *Data = TESTData.c_str();
: :
: :     int length = StrLen(vEditInterval->Text.c_str());
: :
: :     for(int i= 0; i<length; i++)
: :     {                                                                                                                    -
: :         if(!('0'<=Data[i]&&Data[i]<='9'))
: :         {
: :             MessageDlg("숫자만 입력하세요", mtWarning, TMsgDlgButtons() << mbOK, 0);
: :             return;
: :         }
: :     }
: : //////////////////////////////////////////////////////////////////
: : 아래와 같이 실행하면 Data값이 이상하게 나오는데 차이를 모르겠습니다.
: : /////////////////////////////////////////////////////////////////
: :
: :     char *Data = vEditInterval->Text.c_str();
: :
: :     int length = StrLen(vEditInterval->Text.c_str());
: :
: :     for(int i= 0; i<length; i++)
: :     {                                                                                                                    -
: :         if(!('0'<=Data[i]&&Data[i]<='9'))
: :         {
: :             MessageDlg("숫자만 입력하세요", mtWarning, TMsgDlgButtons() << mbOK, 0);
: :             return;
: :         }
: :     }
: : /////////////////////////////////////////////////////////////////////////////////////////////////////
: :     AnsiString TESTData;                                   //
: :     TESTData = vEditInterval->Text;                    //                char *Data = vEditInterval->Text.c_str();
: :     char *Data = TESTData.c_str();                    //
: : ////////////////////////////////////////////////////////////////////////////////////////////////////
: : 초보적인 질문이지만 비교  부탁드리겠습니다.  너무 궁금해서요

+ -

관련 글 리스트
55222 AnsiString 와 char * 비교 부탁드립니다. 민간돼지 1885 2008/11/21
55242     Re:AnsiString 와 char * 비교 부탁드립니다. 김태선 1604 2008/11/24
55250         Re:Re:AnsiString 와 char * 비교 부탁드립니다. 아제나 1551 2008/11/24
55253             Re:Re:Re:AnsiString 와 char * 비교 부탁드립니다. 장성호 1606 2008/11/24
55259                 Re:Re:Re:Re:AnsiString 와 char * 비교 부탁드립니다. 아제나 1819 2008/11/24
55247         Re:Re:AnsiString 와 char * 비교 부탁드립니다. 민간돼지 1261 2008/11/24
55233     Re:AnsiString 와 char * 비교 부탁드립니다. 아제나 1625 2008/11/21
55248         Re:Re:AnsiString 와 char * 비교 부탁드립니다. 민간돼지 1339 2008/11/24
55227     Re:AnsiString 와 char * 비교 부탁드립니다. 장성호 2195 2008/11/21
55228         Re:Re:답변 감사드립니다. 민간돼지 1367 2008/11/21
55223     저는 잘 되는데요. 근데 '-' 이건 뭐에요? 조대현.Clau 1435 2008/11/21
55226         Re:저는 잘 되는데요. 근데 '-' 이건 뭐에요? 민간돼지 1395 2008/11/21
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.