|
안녕하세요 둘리님!
답변 정말 많은 도움되어 고맙습니다.
한가지 잘 몰라서 더 여쭤볼께요
답변중에 Text.c_str(); 라고 하셨는데 에디트박스 속성에 바로 붙여쓴 c_str()가 내장함수 인가요?
둘리 님이 쓰신 글 :
: C++ Builder 에서 문자열을 다루실려면, 특히 컴포넌트와 연계해서 다루실려면
: AnsiString 이라는 type을 알아야 합니다.
: CBuilder IED Editor 에서 AnsiString 이락 치시고 F1 을 눌러 보세요.
: 설명이 나올 겁니다.
:
: 참고적으로
: Edit->Text 는 그 type 이 AnsiString 입니다.
: AnsiString s = Edit->Text;
: int char_count = s.Length(); << 이렇게 길이 구합니다.
:
:
: 그리고
: char *p = Edit->Text.c_str();
: for(int i=0;i<Edit->Text.Length();i++){
: // 여기서 *(p+i) 를 a , b,c ,d 와 비교해서 갯수 해아리면 되겠죠?
: }
:
: C++Builder는 수 많은 VCL 이라는 Visual 또는 Invisible Component 라이브러리를 사용 합니다.
: 언제든 F1 을 눌러 Help 를 참조 하세요.
: C++Builder F1 속에 거의 모든 내용이 있습니다.
:
:
: C++Builder 님이 쓰신 글 :
: : 제목대로 에디트박스에 입력된 문자열전체, 또는 문자열중에서 a,b,c,d 가 각각 몇개 인가를 알아내서 레이블이나 다른 에디트박스로 출력하는 프로그램을 짜려고 합니다.
: :
: : char x;
: : int counta, countb, countc, countd;
: :
: : while ((x = getchar()) != '\n'){
: : switch (x){
: : case 'a':
: : counta++;
: : break;
: : case 'b':
: : ....
: : ..
: :
: : 위는 C에서의 알고리즘인데요, 저걸 약간 변형하면 될것 같은데..저는 C만 배우고 C빌더는 처음이라..
: : x = Edit1->Text 대충 했더니 에러...ㅠㅠ ㅎㅎ
: : 알려주세요..
|