다루두루

블로그 이미지

차케요

공부하면서 정리하는 노트같은 블로그입니다.

C언어 독학 배열로 문자열 표현하기

C언어 알고리즘 2015. 8. 14. 17:44


C언어 독학 배열로 문자열 표현하기

 

■ C언어에서 문자열을 표현할 때는 큰따옴표("")를 이용하는데요. char 배열을 이용해서 문자열을 저장하고 변경할 수 있는데 간단한 코딩을 해보면서 그 과정을 확인해보겠습니다. 먼저 char 배열에 문자열을 저장하겠습니다.


▲ char 배열 str에 길이를 지정하지 않고 문자열을 입력하고 있습니다. 이렇게 길이를 지정하지 않으면 컴파일러가 문자열을 체크한 후 그 길이를 자동으로 지정해주는데요. 1byte의 char의 길이를 확인하기 위해서 sizeof() 연산자를 사용하고 있습니다. 프로그램을 실행하면 다음과 같은 결과가 출력되는데요.

 


▲ str 배열의 크기는 8byte이군요. 1byte 짜리 데이터가 8개 있다는 소리인데.... 좀 이상합니다. "Hello~!" 문자열은 분명히 7개인데 왜 8개라고 표시되는 걸까요? 이는 C언어 문자열의 마지막에는 무조건 null 문자가 들어가기 때문입니다. 그럼 마지막 8번째 자리에 있는 null 문자를 char형과 정수형으로 출력해서 존재를 확인해보겠습니다.


▲ str[7](여덟 번째 자리)에 있는 녀석의 존재를 확인하기 위해서 정수형과 문자형으로 출력을 하고 있습니다.


▲ 이렇게 null 문자의 정수값인 "0"과 문자형 값인 "공백"이 표시됩니다. 이처럼 C언어 문자열의 마지막에는 무조건 'null'값이 포함되어 있다는 걸 유념해야 합니다. 만약 이 값이 없다면 이는 문자열이 아니고 그냥 단순하게 문자 배열에 지나지 않습니다. 참고하시고요. 

 

 이제 이 문자열 배열의 값을 변경해보겠습니다. 마지막 느낌표"!"를 물음표"?"로 변경해보겠습니다.

▲ 변경할 자리에 문자를 대입하면 되구요.

▲ 해당 값만 변경돼서 출력되는 걸 확인할 수 있습니다. 


 이렇게 해서 char 배열에 저장된 문자열의 기본 개념을 정리해봤는데요. 문자열의 마지막에는 무조건 null 문자가 포함되며 이게 없으면 단순하게 문자 배열에 지나지 않고 각 배열의 요소에 접근에서 문자열의 일부만 변경할 수도 있다는 것까지 확인해봤습니다. 수고하셨어요.

저작자표시 비영리 변경금지
Posted by 차케요

    최근...

  • 포스트
  • 댓글
  • 트랙백
  • 더 보기

카테고리

NEW (900)
아이폰 개발 기초 (7)
취미 (16)
아두이노 (16)
[안드로이드] 어플만들기 (77)
안드로이드 기초 다지기 (61)
슈팅게임 만들기 (4)
[JAVA]자바 공부하기 (48)
C언어 알고리즘 (61)
[Unity3D]유니티3D 강좌 (7)
컴퓨터 (325)
포토샵CS2 강좌 (6)
유용한 프로그램 (244)
리눅스 노트정리 (22)
임베디드 리눅스 (11)
New블로그 (9)
음식의 효능 (4)
일반상식 (56)
HTML 공부 (40)
포토샵 공부 (36)
엑셀 (6)
파워포인트 공부 (19)
노트정리 (38)
일상 (33)
TV영화 (85)
방명록 : 관리자 : 글쓰기
차케요's Blog is powered by daumkakao
Skin info material T Mark3 by 뭐하라
favicon

다루두루

공부하면서 정리하는 노트같은 블로그입니다.

  • 태그
  • 링크 추가
  • 방명록

관리자 메뉴

  • 관리자 모드
  • 글쓰기
  • NEW (900)
    • 아이폰 개발 기초 (7)
    • 취미 (16)
      • 아두이노 (16)
    • [안드로이드] 어플만들기 (77)
      • 안드로이드 기초 다지기 (61)
      • 슈팅게임 만들기 (4)
    • [JAVA]자바 공부하기 (48)
    • C언어 알고리즘 (61)
    • [Unity3D]유니티3D 강좌 (7)
    • 컴퓨터 (325)
      • 포토샵CS2 강좌 (6)
      • 유용한 프로그램 (244)
    • 리눅스 노트정리 (22)
      • 임베디드 리눅스 (11)
    • New블로그 (9)
    • 음식의 효능 (4)
    • 일반상식 (56)
    • HTML 공부 (40)
    • 포토샵 공부 (36)
    • 엑셀 (6)
    • 파워포인트 공부 (19)
    • 노트정리 (38)
    • 일상 (33)
    • TV영화 (85)

카테고리

PC화면 보기 티스토리 Daum

티스토리툴바