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
[70172] Re:Re:Re:Re:access violation at address 32657C7A Read of address 0000000E 에러 도와주세요..
초보자 [] 12022 읽음    2013-09-27 16:43
초기값을 주고 했는데 계속 안되네요,,, 컴파일은
파일을 올려보겠습니다.ㅜ
CandS_dab.cpp 에 Button1Click 함수부터 시리얼포트 열면서 데이터받고 CS_DATA에서 데이터 파싱하는 것인데 한번체크좀해주시면 감사하겠습니다.ㅜㅜ

junesaku 님이 쓰신 글 :
: data가 무엇인지 pdata가 무엇인지 모르겠지만
:
: pdata에 초기화나 데이터를 할당되지 않은 상태에서[메모리 주소건]
: pdata에 근거한 계산값[주소값]을 pdata에 집어넣고 있음으로 pdata의 값은 알수 없는 쓰레기 값이됩니다.
:
: 그런데 memcpy로 pdata에서 데이터를 읽어와서 복사하라고 하면 쓰레기 값이 복사되거나 메모리 관련 예외가 뜨게 되죠.
:
: 그래서 두 함수 모두 정상 동작을 안합니다.
:
: 초보자 님이 쓰신 글 :
: : 안되네요.ㅜㅜ 문제를 모르겟어요 구조체변수를 배열로늘리기밖에안했는데...
: :
: : 까망이 님이 쓰신 글 :
: : : 저도 왕초보라 잘은 모르겠지만,
: : : pdata에 초기값이 없어서 아닐까요??
: : : 가져오신 data는 쓰지시도 않는 구문인듯..
: : :
: : :
: : : 초보자 님이 쓰신 글 :
: : : : memcpy 하는 데 자꾸 오류가납니다.
: : : :
: : : : 원래코드에서 구조체변수를 배열로 늘렸는데 컴파일은 되는데 프로그램이 구동중에 위와같은오류가뜨는데
: : : :
: : : : 종잡을수가없습니다.ㅠㅠ
: : : :
: : : : void dab_ev_signal_quality_pars(char *data)
: : : : {
: : : :     char *pdata;
: : : :     pdata += 10;
: : : :     memcpy(&dab_ev_signal_quality.cer, pdata, sizeof(short));
: : : :     pdata += 2;
: : : :     dab_ev_signal_quality.snr = *pdata;
: : : :     pdata += 1;
: : : :     memcpy(&dab_ev_signal_quality.rssi, pdata, sizeof(long));
: : : : #ifdef __USE_SUB_RF__
: : : :     pdata += 4;
: : : :     memcpy(&dab_ev_signal_quality.cer_sub, pdata, sizeof(short));
: : : :     pdata += 2;
: : : :     dab_ev_signal_quality.snr_sub = *pdata;
: : : :     pdata += 1;
: : : :     memcpy(&dab_ev_signal_quality.rssi_sub, pdata, sizeof(long));
: : : : #endif
: : : : }
: : : :
: : : : void dab_ev_signal_quality_pars(char *data, char port)
: : : : {
: : : :     char *pdata;
: : : :     pdata += 10;
: : : :     memcpy(&dab_ev_signal_quality[port].cer, pdata, sizeof(short));
: : : :     pdata += 2;
: : : :     dab_ev_signal_quality[port].snr = *pdata;
: : : :     pdata += 1;
: : : :        memcpy(&dab_ev_signal_quality[port].rssi, pdata, sizeof(long));
: : : : #ifdef __USE_SUB_RF__
: : : :     pdata += 4;
: : : :     memcpy(&dab_ev_signal_quality[port].cer_sub, pdata, sizeof(short));
: : : :     pdata += 2;
: : : :       dab_ev_signal_quality[port].snr_sub = *pdata;
: : : :     pdata += 1;
: : : :      memcpy(&dab_ev_signal_quality[port].rssi_sub, pdata, sizeof(long));
: : : : #endif
: : : : }

+ -

관련 글 리스트
70168 access violation at address 32657C7A Read of address 0000000E 에러 도와주세요.. 초보자 3197 2013/09/27
70169     Re:access violation at address 32657C7A Read of address 0000000E 에러 도와주세요.. 까망이 3646 2013/09/27
70170         Re:Re:access violation at address 32657C7A Read of address 0000000E 에러 도와주세요.. 초보자 3225 2013/09/27
70171             Re:Re:Re:access violation at address 32657C7A Read of address 0000000E 에러 도와주세요.. junesaku 3243 2013/09/27
70172                 Re:Re:Re:Re:access violation at address 32657C7A Read of address 0000000E 에러 도와주세요.. 초보자 12022 2013/09/27
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.