본문 바로가기
기초 용어

Null-terminated string 널 종단 문자열

by tokkiC 2022. 5. 19.

 

Null 비어있음 + terminated string 끝내는 문자열

말그대로 null 을 써서 끝내는 문자열을 뜻한다

문자 인코딩 방법으로 ASCII (아스키 코드)를 사용하는 경우의 문자열을 표현할때

문자열은 각각의 영어 문자를 아스키코드에 매칭시켜서 메모리에 배열로 저장한다

문자열이 끝나면 이 뒤로 이상 뒤로 올 문자(=배열 값)이 없다는 것을 나타내기 위해서

문자열을 매칭, 변환한 마지막 아스키코드의 다음에 null을 써주어 이 뒤로 값이 없다는 것을 표현한다

null 의 아스키코드 는 0인데  이것을 숫자 0과 구분하기 위해서 이스케이프 문자 \0 으로 표현한다

이렇듯 아스키코드를 사용한 인코딩 문자열에서 메모리에 저장 시 문자열이 끝났음을 표현하기 위해

문자를 저장할 수 있는 1byte의 메모리에 아스키코드\0 를 저장하여 마침표처럼 사용하는 문자열을 

null-terminated string 널 종단 문자열 이라고 한다

각 칸당 메모리에서 1byte 를 차지한다. 영문자는 각 1byte 를 차지하고 널-종단문자도 1byte를 차지하여 마침표처럼 쓰인다


이해하고 나니 저 짤이 다르게 보인다. 이미지 출처 : https://www.reddit.com/r/ProgrammerHumor/comments/cwj0m4/oh_no_hes_not_utf8_encoded/

'기초 용어' 카테고리의 다른 글

script 스크립트, 스크립트 언어  (0) 2022.05.20
random 랜덤  (0) 2022.05.19
[개념] pay load, overhead, protocol overhead  (0) 2022.05.17
[개념] buffer , flush()  (0) 2022.05.17

댓글