2011-08-07 2 views
0

마이크로 컨트롤러에서 데이터를 읽는 직렬 포트에서 읽는 자체 터미널 프로그램을 작성했습니다.Visual C++ String Parsing

0C82949> 0D23949> 0A75249> 등

는이 ASCII은 ... 다음과 같이 데이터가 표시됩니다. 몇 가지주의해야 할 점은 모든 요소가> _0xx로 시작한다는 것입니다. 여기서 xx는> 0C8 또는> 0D2 등의 일부 문자입니다.이 경우 데이터의 나머지 부분은> 0C8이 속도 자동차의 2949는 실제 속도를 유지합니다. 마이크로 컨트롤러는 데이터를 매우 빠르게 작성하므로 한 번에 한 번에 40 개의 요소를 볼 수 있습니다. 나는 무리에서 빠르게 "> 0C8"항목이 검색 만 인쇄 할 "> 0C82949"를 원하는 :

난 단지 0D2하려는 경우 예 : 직렬 포트에서

읽기 :> 0C82949> 0D23949> 0A75249> 출력 : 0D23949

누구나이 방법을 알고 있습니까? 나는 그것이 매우 빠르기 때문에 내가 할 수있는 쓰래드를 만들어야한다는 것을 알고있다. 나는 파싱을 위해이 문제에 접근하는 방법을 모른다. 어떤 아이디어라도 대단히 감사하겠습니다.

난 당신이 데이터를 분석하고 각 > 캐릭터를 나눌 수 있습니다 비주얼 C++

답변

0

을 사용하고 있습니다. 그런 다음 별도의 문자열을 만듭니다. 각 문자열에 대해 원하는 하위 문자열을 검색하면됩니다. strstr 또는 CString::Find 또는 string::find을 사용할 수 있습니다. 별도의 스레드를 만들 필요가 없습니다. 검색 작업은 매우 간단하며 CPU를 많이 차지하지 않습니다.