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
[57155] Re:일주일째 하다가 거의 완성을 눈앞에두고..다시 질문드립니다....
Julien [julien] 962 읽음    2009-06-07 21:45
AnsiString 은 클래스이므로 ...구조체의 멤버로 사용하면 클래스의 포인터만 멤버에 지정이 됩니다.
따라서 구조체의 크기 즉 sizeof(myname) 을 하면 AnsiString 클래스의 포인터 3개와 나이를 나타내는 int 하나니까...32비트 OS에서는 16바이트로 나오게 됩니다.
char 배열을 사용하던가 AnsiString 을 꼭 사용하시려면 문장을 저장하기 위한 다른 방법을 강구해야 할 것입니다.

초초초초초초보 님이 쓰신 글 :
: 제가 하고싶은것은 저장 버튼 눌렀을때 파일에 저장(wb)이 되고 view 버튼을 눌렀을때 읽어(rb) 올려고 하고 있습니다.
: 어디가 잘못된것인지 에러가 뜨내요,,
: FILE*fp 여기에서 문제가 발생 되는건 알겟는데,,, 어디가 잘못된것인지 잘 모르겟내요..
: 문법도 틀린것 같지는 안습니다....
: 아시는분이 계시다면 잘못된점좀 지적해주시기 바람니다. ㅠ
: 자주 질문을 올린듯....
: 아직 view버튼은 만들지 않았습니다.
:
:
:
: 헤더파일에 선언한 구조체..
:  AnsiString Memotogether,Memosingle;
:    typedef struct{
:    AnsiString lasname;
:    AnsiString firname;
:    AnsiString woname;
:    int age;
:    }myname;
:    myname start
:
:
: cpp파일 내용...
:
:
:
: void __fastcall TForm1::ButtonClick(TObject *Sender)
: {
:
:
:       start.lasname = Txtlastname->Text;
:     start.firname = Txtfirstname->Text;
:     start.age = Txtage->Text.ToInt();
:     start.woname = Txtwomenname->Text;
:
:
:     Memotogether = "나는 " + Txtlastname->Text + Txtfirstname->Text + "이고,\n나이는 " + Txtage->Text + "세이며,\n여자친구이름은 " + Txtwomenname->Text + "입니다.";
:   Memosingle = "나는 " + Txtlastname->Text + Txtfirstname->Text + "이고,\n나이는 " + Txtage->Text + "세이며,\n여자친구는 없습니다.";
:
:   if(Txtlastname->Text.Trim().IsEmpty()) ShowMessage("성을 입력해주세요.");
:     else if(Txtfirstname->Text.Trim().IsEmpty()) ShowMessage("이름을 입력해주세요.");
:   else if(Txtage->Text.Trim().IsEmpty()) ShowMessage("나이를 입력해주세요.");
:   else if(Womenselect->Checked){
:         if(Txtwomenname->Text.Trim().IsEmpty()) ShowMessage("여자친구이름을 입력해주세요.");
:     else{
:             FILE *fp = fopen("Introduce.dat","wb");
:       fputs(&start, sizeof(start),1,fp);
:            fclose(fp);
:            ShowMessage(Memotogether);
:     }
:   } else{
:        FILE *fp = fopen("Introduce.dat","wb");
:     fputs(Memosingle, sizeof(Memosingle),1,fp);
:     fclose(fp);
:     ShowMessage(Memosingle);
:   }
:
: }

+ -

관련 글 리스트
57154 일주일째 하다가 거의 완성을 눈앞에두고..다시 질문드립니다.... 초초초초초초보 918 2009/06/07
57155     Re:일주일째 하다가 거의 완성을 눈앞에두고..다시 질문드립니다.... Julien 962 2009/06/07
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.