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
[4795] 이런 일도 생기나여? 좀 황당...
bluewing [bluewing] 3135 읽음    2001-01-07 00:00

double형 변수를 int형 변수로 주는 과정에서 괴이한 현상이 보여서 질문드립니다.
2라는 값을 갖고있는 double변수를 int형 변수에게 넘기니까 1로 바뀌어 버리는군요.
다른 값.. 그러니까 1이나 8, 9등 2가 아닌 다른 값일때는 안그러는데, 2일때만 그렇고요,
항상 그런것이 아니라 프로그램에서 화일로딩/세이브 다이얼로그가 한번 떳다... 하면 그렇게
됩니다. 이러저러한 형태로도 고쳐봤지만 모두 결과가 같았고, 대표적으로 다음과 같은 2가지
형태에서도 모두 같은 결과가 나타납니다. 혹시나 해서 타입 캐스팅을 해줘도 같은 결과가
나오고, 전혀 다른 함수에서 일처리를 해줘도 같은 현상이 일어나는 군요.

나,인트 = 궁시렁 궁시렁 계산결과 더블형; // 나,인트에 1이 담겨버립니다.

나,더블형 = 궁시렁궁시렁 계산결과 더블형; // 여기까지는 제대로 계산결과 2가 나오고...
나,인트 = 나 더블형; // 더블형은 2를 제대로 갖고 있습니다.
                       // 그러나 나,인트는 1을 받아버립니다.


아직까지 다른 부분에서의 버그는 찾지 못핶고요... 일단은 데이터 변수를 몽땅 double
형 변수로 고치는 무식한 방법을 써서 그런대로 현재 프로그램은 에러없이 돌아가고 있습니다.
4.0엔터프라이즈를 사용하고 있는데, 패치 프로그램들을 돌려줘도 역시 같은 문제가 발생하더
군요. 디버깅모드 에서 F8을 눌러가며 변수들을 살펴봐도 천연덕스럽게 데이터가 변질되어버리
는데 미치겠습니다. 무언가 잘못되었다는 생각은 들지만.. 혹시 이런문제에 대해 짐작가는 부분
이 있으신 분들의 조언 부탁드립니다.

+ -

관련 글 리스트
4795 이런 일도 생기나여? 좀 황당... bluewing 3135 2001/01/07
4810     Re:이런 일도 생기나여? 좀 황당... 조재영 2965 2001/01/08
4812         감사합니다. bluewing 3330 2001/01/08
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.