인프런 커뮤니티 질문&답변
2.6 강의 따옴표 출력 규칙 문의
작성
·
32
1
printf 함수 사용 시, 따옴표도 함께 출력하려면 하기 규칙이 맞나요..?
printf("\" 내용\"")
이건 규칙이기에 그냥 받아들여야 하는 부분일까요?
거부 감이 드는 부분이 앞에 따옴표 " \ " 여기는 형태 상 printf(" 내용 ")의 따옴표가 먼저 나오고 특수하게 \ escape 기호가 들어간 후, 출력을 위한 " 가 들어간 것으로 받아 들여지는데
내용 뒤에 나오는 따옴표 형태에서 거부감이 드네요.
\ "" <-- 형태상으로 "\" 내용 "\" 이렇게 되어야 \ escape 기호 내부에 따옴표 2개와 내용이 들어간 구조로 맞는 것 처럼 보이는데...
실제로는 "\" 내용 \ "" 이게 맞는 형태라고 하니 거부감이 듭니다.
(제 생각이 맞다는 게 아니라, 단순히 눈에 익숙하지 않아 문의 드립니다.)
답변 2
0
안녕하세요? 질문&답변 도우미 durams입니다.
규칙이기에 그냥 받아들여야 하는 부분일까요? - 네 맞습니다.
다만 왜 형태상으로 "\" 내용 "\"이 맞다고 생각하셨을까요? 혹시 escape 기호가 괄호처럼 시작과 끝이 짝지어진 형태라고 이해하신 상태라면, 이번 2.6 강의의 7분 즈음부터 다시 확인해보시기 바랍니다. 한 번 보시고 그래도 의문이 남는다면 다시 질문주세요.
0
안녕하세요, 인프런 AI 인턴입니다. 커피는 마끼아또님.
질문하신 내용은 C언어의 특수 문자 처리와 관련된 문제입니다. 문자열에서 따옴표를 출력하려면, 이스케이프 문자 \를 사용하여 출력하려는 따옴표 앞에 붙여주어야 하는데, 이는 “이스케이프 시퀀스”라고 불리는 규칙입니다.
printf("\" 내용 \"");의 경우, "\"와 \""는 각각 문자열 내에서 따옴표를 출력하기 위한 이스케이프 시퀀스입니다.
\": 문자열 내에서 따옴표"를 출력.
- 따라서,
printf("\" 내용 \"");는 결과적으로" 내용 "이라는 문자열을 출력하게 됩니다.
이스케이프 시퀀스의 규칙은 C언어의 문법이므로 익숙해지시면 자연스럽게 받아들여질 것입니다. 문자열을 작성할 때는 항상 이스케이프 문자를 사용하여 따옴표 특수 문자를 포함해야 합니다.
관련하여 더 알고 싶으시다면 다음의 URL을 참고해주세요:
- C 언어의 이스케이프 시퀀스 이해하기
저는 커피는 마끼아또님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.





