#4 출력(2) - 더 다양한 내용 출력하기
특수한 문자를 출력해봅시다
Table Of Contents
줄바꿈
문제)
이전 글에서는 “Hello world!”라는 문자열을 출력했습니다.
2022년 3월 30일
하지만 위와 같은 내용을 출력하려면 어떻게 해야 할까요?
코드
#include <stdio.h> int main(void) { printf("2022년 3월 30일"); return 0; }
결과
빌드 실패
처럼 입력해 보았지만 빌드가 실패합니다. 이렇게 코드를 작성하는 것은 C언어의 문법에 맞지 않습니다.
그렇다면 이렇게 세 줄에 나누어서 쓰면 어떨까요?
코드
#include <stdio.h> int main(void) { printf("2022년"); printf("3월"); printf("30일"); return 0; }
결과
2022년3월30일
이제는 모든 내용이 붙어서 나옵니다😂
해답)
줄바꿈을 출력하고 싶다면, \n
이라는 특수문자를 이용해야 합니다. 이 문자는 C언어에서 오직 줄바꿈만을 출력하는 문자입니다.
아래처럼 줄바꿈을 출력하고 싶은 위치에 \n
문자를 넣어주세요.
코드
#include <stdio.h> int main(void) { printf("2022년\n3월\n30일"); return 0; }
결과
2022년 3월 30일
“(백슬래시)” 문자가 키보드에서 보이지 않는다면, 엔터키 위 ₩ 문자를 눌러주세요😊 /(슬래시)가 아닌 (백슬래시)입니다!
실행하면 \n
이라는 문자가 아니라 멋지게 줄바꿈이 출력되었습니다.
\ 출력하기
위에서는 \n
이라는 문자를 이용해서 줄바꿈을 출력했습니다. 그렇다면 “\n
”이라는 문자열 자체는 출력할 수 없는걸까요?
코드
#include <stdio.h> int main(void) { printf("\n"); return 0; }
결과
심지어는 “\
” 자체를 출력하려 해도 오류가 생깁니다.
코드
#include <stdio.h> int main(void) { printf("\"); return 0; }
결과
빌드 실패!
“\
”는 C언어에서 조금 특별한 용도로 사용되기 때문입니다. C언어에서 \
를 출력하고 싶다면, \\
와 같이 써야 합니다.
코드
#include <stdio.h> int main(void) { printf("\\n"); return 0; }
결과
\n
코드
#include <stdio.h> int main(void) { printf("\\"); return 0; }
결과
\
“ 출력하기
이번에는 "
을 출력해보려고 합니다.
코드
#include <stdio.h> int main(void) { printf("""); return 0; }
결과
빌드 실패!
🤔🤔🤔🤔🤔
C언어에서 "
역시, 문자열의 시작과 끝을 나타내는 용도로 사용되기 때문에 특수한 기호로 취급됩니다. printf() 함수 안에서는 문자열을 출력할 수 있는데, 컴퓨터는 ""
한 쌍이 나온 순간 문자열이 끝난 것으로 이해합니다. 그런데 뒤로 또 다른 "
가 있으므로 오류가 생긴 것입니다.
printf("" ← 문자열 끝! " ← ???)
"
를 출력하려면 "
앞에 백슬래시를 붙여 \"
처럼 사용해주세요.
코드
#include <stdio.h> int main(void) { printf("\""); return 0; }
결과
"