책 내용 질문하기
null값.
도서
2018 시나공 정보처리기사 실기(산업기사 포함)
페이지
36
조회수
108
작성일
2018-06-04
작성자
탈퇴*원
첨부파일

3번째 책(부록) p.36에

char e[]="12.3"

이 부분을 동영상에서 마지막에 null값이 있다고 설명해주셨습니다.

null값은 언제 있고 언제 없는건가요?

p.39에 main 다음 첫번째 줄 String str="Infomation!" 은 null값이 없어서 length가 12가 되는게 맞나요?

답변
2018-06-05 09:36:50

안녕하세요.

C언어에서 문자 자료형인 char를 이용해 배열을 선언하여 문자열 처리를 할 수 있습니다.

char 형은 본래 한 글자 단위의 문자를 처리하는 자료형인데, 배열을 이용해 문자열을 처리할 수 있으며, 배열을 이용하여 문자열을 처리할 때 문자형 배열 마지막에 자동으로 널 문자가 삽입되어 문자열로 인식됩니다. 이와 같이 char로 선언된 배열에 입력된 하나의 문자로 사용자가 임의로 널 문자를 삽입하여 문자열로 인식되도록 할 수 있습니다. 그 과정이 본서 206쪽에 진행되고 있으니 참고하세요.

JAVA에서는 문자열 자료형을 처리할 수 있는 string 자료형이 있으며, 이를 이용하여 지정한 경우에도 내부적으로는 문자열 마지막에 널문자가 삽입되어 문자열로 인식하는 것입니다.

널 문자는 컴퓨터가 자동으로 인식하도록 하는 것으로 저장된 문자열의 길이에는 영향을 주지 않습니다.

Information! 이라는 문자열의 마지막에도 널 문자가 저장되어 컴퓨터가 인식하지만

실제 문자열의 길이를 산출하는 length 메소드에는 실제 저장된 문자열의 길이만 체크되어 12가 산출되는 것입니다.

36쪽의 char c[] = "123";

에서도 c 배열에 문자열 123이 저장될 때 마지막에 널 문자가 포함되어 인식되지만

실제 처리되는 atoi(c)에서 c는 널이 포함된 123null 이 아니라 123으로 실제 저장된 문자열만 처리 대상이 되는 것과 같은 맥락입니다.

널 문자를 컴퓨터에서 자동으로 인식됩니다. 사용자가 널 문자를 인식해서 사용하는 경우는 문자를 문자열로 강제 인식시키기 위해 의도적으로 포함하는 경우입니다.

오늘도 즐거운 하루 되세요.

  • *
    2018-06-05 09:36:50

    안녕하세요.

    C언어에서 문자 자료형인 char를 이용해 배열을 선언하여 문자열 처리를 할 수 있습니다.

    char 형은 본래 한 글자 단위의 문자를 처리하는 자료형인데, 배열을 이용해 문자열을 처리할 수 있으며, 배열을 이용하여 문자열을 처리할 때 문자형 배열 마지막에 자동으로 널 문자가 삽입되어 문자열로 인식됩니다. 이와 같이 char로 선언된 배열에 입력된 하나의 문자로 사용자가 임의로 널 문자를 삽입하여 문자열로 인식되도록 할 수 있습니다. 그 과정이 본서 206쪽에 진행되고 있으니 참고하세요.

    JAVA에서는 문자열 자료형을 처리할 수 있는 string 자료형이 있으며, 이를 이용하여 지정한 경우에도 내부적으로는 문자열 마지막에 널문자가 삽입되어 문자열로 인식하는 것입니다.

    널 문자는 컴퓨터가 자동으로 인식하도록 하는 것으로 저장된 문자열의 길이에는 영향을 주지 않습니다.

    Information! 이라는 문자열의 마지막에도 널 문자가 저장되어 컴퓨터가 인식하지만

    실제 문자열의 길이를 산출하는 length 메소드에는 실제 저장된 문자열의 길이만 체크되어 12가 산출되는 것입니다.

    36쪽의 char c[] = "123";

    에서도 c 배열에 문자열 123이 저장될 때 마지막에 널 문자가 포함되어 인식되지만

    실제 처리되는 atoi(c)에서 c는 널이 포함된 123null 이 아니라 123으로 실제 저장된 문자열만 처리 대상이 되는 것과 같은 맥락입니다.

    널 문자를 컴퓨터에서 자동으로 인식됩니다. 사용자가 널 문자를 인식해서 사용하는 경우는 문자를 문자열로 강제 인식시키기 위해 의도적으로 포함하는 경우입니다.

    오늘도 즐거운 하루 되세요.

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.