아래 코드를 찾으십시오. 함수에서 strlen 이진 및 ascii 데이터에 대해 동일한 값을 반환합니까?
unsigned char bInput[20];
unsigned char cInput[20];
, 나는
bInput
에서 바이너리 데이터를 얻을 나는
strlen(bInput)
를 사용하여 길이를 결정했다.
bInput
을 이진 형식으로 ASCII로 변환하여
cInput
에 저장하고 길이를 인쇄했습니다. 그러나 둘 다 다릅니다.
프로그래밍 초보자입니다. 행동에 대해 안내해주십시오.
아니요, strlen은 임의의 비 문자열 데이터에 대해 작동하지 않습니다. –
'strlen'은 0 바이트를 찾을 때까지 한 번에 하나씩 바이트를 검색하여 작동합니다 (문자열의 일반적인 종결 자임). 실제 데이터 바이트가 0 일 수있는 바이너리 데이터에서 제대로 작동하지 않습니다. –
"ASCII로 변환 된 2 진수"는 무엇을 의미합니까? –