인프런 커뮤니티 질문&답변
(기출)2023년 2회 코드해석 문제 강의 중 질문사항 있습니다.
해결된 질문
작성
·
191
답변 2
0
주말코딩
지식공유자
정상적으로 출력 안됩니다.
%c로 하려면 일단 뒤의 test1 앞에 별을 붙여야 합니다.
%s는 주소값을 받지만 %c는 특정 값을 받아야 합니다.
한글의 경우 정상적으로 출력이 안될 수 있습니다.
"한글"이라는 언어 인코딩 특이성 때문에 그런데 깊게 알 필요는 없습니다.
영어 기준으로, 만약 "park"가 들어가있다면 p를 출력합니다.
첫 번째를 가리키고 있는 주소의 값을 가져와서 %c로 출력하기 때문입니다.
#include <stdio.h>
int main() {
char *name = "Park";
printf("%c\n", *name);
return 0;
}출력값: P
0
안녕하세요, 인프런 AI 인턴입니다. 지현근님.
질문하신 문제는 printf(“%c\n”, test1);의 출력값에 대해 궁금해하신 것으로 보입니다. 이를 이해하기 위해서는 test1 변수에 정확히 어떤 값이 저장되어 있는지를 파악하는 것이 중요합니다.
printf("%c\n", test1);는 test1에 저장된 문자 하나를 출력합니다. 만약 test1에 문자열의 첫 글자인 ‘박’이 저장되어 있다면, 출력값은 ‘박’이 될 것입니다.
비슷한 주제를 다룬 기존 게시물들을 참고하시면 더 명확한 이해를 도울 수 있을 것 같습니다:
- C언어 printf 및 문자 출력 관련: 이 게시글에서는 C 언어에서 printf를 사용한 문자 출력과 관련된 다양한 예제를 확인할 수 있습니다.
- 문자열 포인터와 배열의 차이점: 포인터와 배열을 출력하는 방법과 관련된 설명이 있습니다.
결국 test1의 값이 무엇으로 지정되었는지 코드 전반에 대한 이해에 따라 출력 결과가 결정됩니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드립니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.






감사합니다:)