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
[45273] Re:RS232 통신에서.... 데이터가 두번씩 찍히네요.. ㅠ.ㅜ
WARSHIP [warship] 1140 읽음    2006-06-13 09:43
궁극적으로는 데이터가 한번씩 오는게 정상이겠습니다만. ^^;
그게 안되신다고 하니 우선 중복된 데이터를 없애는것 하게 되시면
직접 만드셔도 되지만 STL 라이브러리에 이미 구현된 함수를 사용하시면 됩니다.

#include <algorithm>
using namespace std;

int main(int argc, char *argv)
{
     char *str = "112233445566";
     char buf[64];
     unique_copy( str , str+strlen(str)+1 , buf );
     printf("%s\n%s",str,buf);
     return 0;
}

result :
112233445566
123456

이런식으로 될것입니다.

unique,unique_copy 두가지 함수가 있으며 이름이 보여주는대로
unique는 자체를 변경시키는 것이고 unique_copy는 아웃풋 버퍼를
마지막 인자로 받는 함수 입니다.

자세한 레퍼런스는 stl 사이트등을 통해서 알아보시고,
유용하게 사용하시기 바랍니다.

다만 문제가 되는것은 위방법을 사용할 때에는
시리얼로 들어오는 데이타가 항상 앞뒤가 다르다는
전제조건 하에 사용하셔야겠네요. 그렇지않다면
데이타가 소실될테니까요. ^^
그럼 좋은하루 보내시길 바랍니다.


허접 님이 쓰신 글 :
: 안녕하세요..
: 오늘도 어김없이 막히는게 생겼습니다.  ㅜ.ㅜ
: RS232 통신으로 데이터를 받아 처리하는 프로그램인데요..
: 보드에 달린 스위치를 한번 누르면, 0xAE 가 날라옵니다.
: 근데, PCOM 이란 프로그램으로 데이터 송수신을 보면, 한번 누르면, 0xAE가 한번 날아오는데, 그걸 빌더에서 edit창에 뿌려주니까, 거의 대부분 두번씩 찍히네요.
: 즉, 스위치를 한번 누르면, 0xAE 0xAE 이렇게 찍히네요.
: 어떻게 해결을 해야할지 모르겠어요..
: 0xAE 가 나오면, 두번이 나오든, 세번이 나오든, 무조건 한번 나온걸로 처리하고 싶은데.....
: 어찌해야 하나요..   도와주세요..  고수님들...  ㅠ.ㅜ

+ -

관련 글 리스트
45268 RS232 통신에서.... 데이터가 두번씩 찍히네요.. ㅠ.ㅜ 허접 918 2006/06/12
45273     Re:RS232 통신에서.... 데이터가 두번씩 찍히네요.. ㅠ.ㅜ WARSHIP 1140 2006/06/13
45278         Re:Re:RS232 통신에서.... 데이터가 두번씩 찍히네요.. ㅠ.ㅜ 금목암 1108 2006/06/13
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.