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
[73729] Re:Re:Re:진수 변환 코드 관련 질문 드립니다.
금목암[손효철] [iconms1] 4175 읽음    2016-07-13 11:03
변환후 화면에 문자 출력부분은 어떻게 되어 있나요?

앞에서 마스킹 했어도 출력전에 마스킹을 한번 더 해주시는게 좋을것 같네여
마이콤 컴파일러의 경우 char를 1바이트 8비트로 선언하면 그 이상은 잘라버리는데
pc에서 vc나 c++bulider 에서는 16비트나 32비트로 되는 부분 때문에 변환후 앞에
쓰레기 값이 있을때가 생기더군요
그리고 같은 변수에서 마스킹이나 비트 회전시킬때 이상이 생길수 잇으니 결과는 다른 변수로 받아보세요
===================================
정태 님이 쓰신 글 :
: 안녕하세요. 먼저 답변 감사드립니다.
:
: 소스 코드를 첨부 드리자면,
:
: long temp;
: char sResult[255];
:
: temp = 0x00ff & sResult2p[3];
: temp <<= 8;
: temp = temp | (0x00ff & sResult2p[4]);
: temp <<= 8;
:
: 위와 같이 사용 하였습니다.
:
: sResult의 경우 0xC0의 값으로 확인 되었습니다.
:
: 그래도 이상한 값이 나오다보니..
:
: 오늘하루도 화이팅 입니다.
:
: 금목암[손효철] 님이 쓰신 글 :
: : 소스를 못봐서 뭐라고 얘가하긴 부족한데
: : 제 경우에는 일단 받은 문자를 변환전에 0xff로 마스크해서 1바이트로 만든후
: : 변환했습니다
: : 저와 같은 방식인지 모르겟는데 한번 적용해보세요
: :
: : =========================================
: : 정태 님이 쓰신 글 :
: : : 안녕하세요. 볼포에서 항상 많은 도움을 받고 있는 사람입니다.
: : :
: : : 계측 장비 통신 프로그램을 만들다 보니 문제가 생겨 이렇게 글을 남깁니다.
: : :
: : : 계측장비에서 REAL 64 포맷으로 받다보니 16진수를 10진수로 변환 하는 코드 질문입니다.
: : :
: : : 첨부 파일에 보시면, sResult2 배열의 3,4,5,6,7,8,9,10 번째 배열 까지의 16진수를 10진수로 변환 하는 과정인데...
: : :
: : : 이상한 값이 나와서 이렇게 질문 드립니다.
: : :
: : : 혹,,, 답변을 달아 주신다면 감사하겠습니다....

+ -

관련 글 리스트
73726 진수 변환 코드 관련 질문 드립니다. 정태 3760 2016/07/12
73730     [답변] 자료형에 따른 포멧 지정자 정성훈.해미 3920 2016/07/13
73727     Re:진수 변환 코드 관련 질문 드립니다. 금목암[손효철] 3737 2016/07/12
73728         Re:Re:진수 변환 코드 관련 질문 드립니다. 정태 3833 2016/07/13
73729             Re:Re:Re:진수 변환 코드 관련 질문 드립니다. 금목암[손효철] 4175 2016/07/13
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.