0을 만나면 출력을 안해줘요
꽃겨울
2023.04.01
질문 제목 :질문 내용 :
memcpy(string,mac,6);
*var_len = strlen(string);
return (unsigned char *) string;
mac[0]~[5]까지 예를들어 01 02 03 00 05 06이렇게 들어있으면 출력문을 보면 01 02 03 까지만 나옵니다즉, 처음이나 중간에 00이 들어가면 그 이후로는 출력이 안됩니다.하루종일 보는데 이유를 모르겠어요
-
아서
문자에 0이 들어가면 NULL로 처리되어서 안나오는 것이었어요.
문자열 길이를 고정해주니 끝까지 다 나오네요
답변 주신분들 모두 감사드립니다 ^^ -
스릉흔드
문자열의 끝이 0이라서 그렇게 보이는거같네요
-
스콜피온
코드를 올려주셔야 문제를 알 수 있을것 같습니다.
-
슬옹
다른이유 없이
00이란 값이 NULL문자로 인식이 되기 때문입니다.
자세한 내용은 아스키표를 참고하시면 될거같아요 ㅎㅎ -
딥와인
문자로 00이 들어있는것인가요 아스키값이 00이란 것인가요?