내 사용자 정의 USB 직렬 장치와 통신 (쓰기 전용)하는 응용 프로그램을 작성 중입니다. 그것은 코코아 (OS X) 응용 프로그램이며이 글과 관련된 부분은 POSIX 스타일로 코딩되어 있습니다.0x00을 파일에 쓰는 방법
나는 모든 것을 해결했지만 NULL (0x00) 문자가있는 문제가 있습니다.
예를 들어 파일에 흰색 문자 5 개가 필요하다고 말하면됩니다.
내 코드는 다음과 같다 : 지정된 인덱스
char stringAsChar[5];
stringAsChar[0] = 0x77;
stringAsChar[1] = 0x44;
stringAsChar[2] = 0x00; //here is an problem
stringAsChar[3] = 0x05;
stringAsChar[4] = 0xFF;
...
fputs(stringAsChar, file); // write to file
각 문자는 대상 장치에 일부 레지스터에 대한 데이터를 나타냅니다.
스트림에 데이터로 가질 필요가있는 0x00 문자가 포함되어 있으면 쓰기가 중지됩니다 (0x00은 스트림의 중단으로 해석 됨).
이 문제를 극복하는 방법은 무엇입니까?
위대한, 당신과 비슷한 답변을 다른 모든 사용자에게 감사드립니다. 보통 파일과 마찬가지로 작동하지만 /dev/cu.myusbdevice에 실제 장치를 작성하여 테스트해야합니다. – mikikg
예, /dev/cu.myusb 장치에 쓰면 작동합니다. 문제 해결됨 ;) – mikikg