null 문자에 관해서 질문드립니다.
122
작성자 없음
작성한 질문수 0
for (int i = 0; i < 200; i++)
printf("%c", your[0][i]);
printf("\n\n");
해당 코드에서 저는 강의와 다르게 문자열이 띄어쓰기 없이 출력되는 것을 확인했는데, 아스키로 0의 값을 가질 때 띄어쓰기로 나와야 하나요?
아스키로 출력했을 땐 강의와 동일하게 출력이 나옵니다.
답변 2
0
안녕하세요, 인프런 AI 인턴입니다. oonsy99님.
질문 주신 내용에 대해 설명드리겠습니다. C언어에서 문자열은 null 문자(\0)로 끝나는 캐릭터 배열입니다. 이 null 문자는 아스키 코드값 0을 가지며, 문자열의 끝을 나타냅니다. printf("%c", your[0][i]); 코드는 your[0][i]의 값을 하나하나 출력하는데, 만약에 문자열이 null 문자로 끝나지 않았다면, 메모리 상의 연속된 값들이 모두 출력될 수 있습니다.
아스키 코드 값으로 0 (\0)은 실제로 출력이 불가능한 제어 문자입니다. 즉, 화면에 출력되었을 때는 보이지 않는 값으로, 문자열의 종료를 나타냅니다. 따라서, 강의와 다르게 문자열이 계속 이어져 출력되는 것은 아마도 null 문자가 적절히 삽입되지 않은 채로 출력이 되고 있기 때문입니다.
관련하여 더 자세한 설명이나 해결 방법을 찾고자 한다면, 관련 질문을 참고할 수 있습니다. 비슷한 질문에서 ‘null’ 문자와 관련된 다양한 설명을 확인할 수 있을 것입니다. 아래의 유사한 질문 링크를 참고해 주세요:
19:24 질문드립니다. - 이 게시물은 포인터와 배열의 크기에 대한 혼동을 다룰 수 있습니다.
string에서 null char 관련 - C++에서 문자열의 경우와 비교하며,
null문자에 대한 설명이 포함될 수 있습니다.8.1 입출력 버퍼 강의를 보고 질문드립니다. - 입출력 버퍼와 관련하여 문자열의 처리에 대한 설명이 있을 수 있습니다.
이해하기 어려운 부분이 있거나 추가적으로 궁금한 점이 있으시면 더 질문해 주세요. 곧 지식공유자께서 자세한 답변을 드릴 것입니다. 😊
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
Export template 안됨
1
26
2
완전히 똑같이 따라해도 exe파일이 안만들어져서 실행이 안됩니다.
1
56
3
main 함수에서 왜 int만 선언이 되는걸까요
1
57
2
8비트 2진수 변환시 왜 1을 더해야하나요?
1
55
2
혹시 강의를 빠르게 수강하려면 어디서부터 듣는게 좋을까요?
1
49
1
프로토타입과 함수간의 인자 불일치
1
73
2
12.12 헤더 관련 질문
1
60
2
Visual Studio Community 2026 사용 문의
1
138
2
Q. 15:30, 부호가 있는 8비트 정수 질문
1
61
2
getchar(), putchar()
1
94
3
강의자리ㅛ
1
80
2
비주얼스튜디오코드로 공부해도 상관없나요?
1
114
2
소스파일안에 여러 파일
1
76
2
F5와 F7의 차이
1
79
2
c = TWO * (a+b); 에서 a와 b는?
1
58
2
; 세미콜론을 붙이는 기준에 문의
1
70
1
Step over 기능 문의
1
53
2
2.6 강의 따옴표 출력 규칙 문의
1
76
2
int main 함수 관련 오류 문의
1
67
2
13.4 words[0]
0
61
2
11.7 함수를 구현해 봤습니다.
1
62
2
11.6 직접 strcmp와 strncmp를 구현해 보았습니다.
1
65
2
11.6 my_strcat과 my_strncat을 구현해봤습니다.
1
53
2
11.6 fit_str함수를 구현해 봤습니다.
1
54
2





