본문 바로가기
Ghost의 C Note(노트)/Ghost의 C언어 Escape Sequence

Ghost 이제는 좀 더 나은 모습을 향해? ~_~

by dark ghost 2012. 4. 22.
728x90
반응형

Escape Sequence란?

: 개행문자('\n')은 두 개의 문자 백슬래쉬('\')와 'n'이 하나의 문자로 취급되는 특별한 경우인데 여기서 백슬래쉬 문자는 문자 'n'이 아스키 코드의 본래 의미에서 멋어나서 다른 뜻을 가진다는 의미이다. 이런 이유로 백슬래쉬와 결합된 문자를 escape sequence라고 부르며 escape sequence는 하나의 문자상수이다. 따라서 escape sequence는 반드시 백슬래쉬('\')와 함께 작은 따옴표로 묶어서 하나의 문자로 표시해야 한다.

 

\0 -- NULL -->공백문자

\a -- 경고음

\b -- 백스페이스(backspace) --> 커서를 한칸 뒤로(문자 한칸 지움)

\f -- 폼 피드(form feed) --> 인쇄할때 쓰이는 문자(별로 안쓰이는듯)

\n -- 개행(new line) --> 커서를 한줄 아래로

\r -- 캐리지 리턴(carriage return) --> 커서를 그 문장 맨 앞으로(\r 이전의 모든 문자를 지움)

\t -- 수평 탭 --> 탭(tab)키가 적용되서 4칸 띄어서 표시됨

\v -- 수직 탭

\' -- ' 출력(작은 따옴표)

\" -- " 출력(큰 따옴표)

\? -- ? 출력(물음표)

\\ -- 역슬래쉬(\를 출력함) 출력

\Ooo -- octal number -->oo는 8진수 숫자

\xhh -- hexadecimal number --> hh는 16진수 숫자

 

 1. printf() 함수 내에 형식지정자 %c를 이용하여 문자를 출력할 수 있는데 8진수나 16진수를 이용하면 형식지정자 %c없이도 escape sequence를 이용하여 문자를 출력 할 수있다. 위 소스는 여러가지 방법으로 문자를 출력하여 보여주는 소스이다.

 

2. 위 그림은 위의 소스를 컴파일 하여 생성한 파일로 실행 시킨 화면이다. 위 그림에서 볼 수 있듯이 각 각의 구문에 의하여 출력되었고 마지막 구문 "3 bell sount \an"이라는 구문은 마지막 구문에 오타가 있지만 오타 부분은 찾아 보기 바란다. 이 부분은 \a로 벨소리를 들려준다. 이 구문은 프로그램 작성시 문제가 뜬다면 소리로 알려주게 짤때 쓴다면 많은 도움이 될 것이다. 

728x90
반응형

댓글