이스케이프 시퀀스에 대해 알고 있는지 묻는 문제이다.
이스케이프 시퀀스를 모른다면 아래 더보기 버튼을 클릭해서 접은글을 확인해보도록...
이스케이프 시퀀스에 대한 자세한 설명은 아래 링크에서 확인할 수 있다.
https://learn.microsoft.com/ko-kr/cpp/c-language/escape-sequences?view=msvc-170
위 링크의 내용을 요약하자면 다음과 같다.
이스케이프 시퀀스는 백슬래시(\) 뒤에 한 문자나 숫자 조합이 오는 문자 조합을 의미한다.
일반적으로 터미널과 프린터의 캐리지 리턴 및 탭 이동과 같은 동작을 지정하거나,
인쇄할 수 없는 문자 및 특별한 의미를 가진 문자(ex. 따옴표)의 리터럴 표현을 제공하는 데 사용한다.
쉽게 설명하자면,
예를 들어 큰따옴표(")는 문자열의 시작과 끝을 의미하는 문자, 즉 특별한 의미를 가진 문자이다.
큰따옴표(")를 출력하려고 아래와 같이 코드를 작성하면 컴파일에러가 난다.
printf(""");
첫 번째 큰따옴표가 문자열을 열고, 두 번째 큰따옴표가 문자열을 닫고,
세 번째 큰따옴표가 또 문자열을 열었지만, 그대로 함수가 닫히므로
문자열이 닫히지 않은 채 printf( ) 함수가 종료되기 때문이다.
따라서, 두 번째 큰따옴표가 문자열을 닫는 기능을 수행하지 않도록 해야한다.
용도를 벗어나서(escape) 사용하기 위해서는 이스케이프 시퀀스를 사용하면 된다.
큰따옴표를 출력하는 코드를 수정하면 아래와 같다.
printf("\"");
이 외에도 다양한 이스케이프 시퀀스가 있다.
이스케이프 시퀀스 | 표현 |
\a | 벨(경고) |
\b | 백스페이스 |
\f | 폼 피드 |
\n | 줄 바꿈 |
\r | 캐리지 리턴 |
\t | 가로 탭 |
\v | 세로 탭 |
\' | 작은따옴표 |
\" | 큰따옴표 |
\\ | 백슬래시 |
\? | 물음표 |
백슬래시(\), 줄 바꿈, 작은따옴표(') 를 출력하려면 이스케이프 시퀀스를 활용해야 한다.
예제 출력1의 출력 결과를 복사한 후 백슬래시(\), 줄 바꿈, 작은따옴표(')를 이스케이프 시퀀스로 바꿔주면 된다.
#include <stdio.h>
int main(void) {
printf("\\ /\\\n ) ( \')\n( / )\n \\(__)|");
return 0;
}
'PS > 백준' 카테고리의 다른 글
[백준] 25083번: 새싹 [C] (0) | 2023.01.02 |
---|---|
[백준] 10172번: 개 [C] (0) | 2023.01.02 |
[백준] 2588번: 곱셈 [C] (0) | 2023.01.02 |
[백준] 10430번: 나머지 [C] (0) | 2023.01.02 |
[백준] 3003번: 킹, 퀸, 룩, 비숍, 나이트, 폰 [C] (0) | 2023.01.02 |