본문 바로가기
프로그래밍언어/C언어

printf() 함수 서식문자 - 문자와 문자열 출력하기(%c, %s)

by J코딩 2021. 8. 17.
반응형

앞서 printf()함수의 기능 중 다양한 숫자에 대한 출력에 대해서 알아보았습니다.

https://jcoding7.tistory.com/entry/%EC%84%9C%EC%8B%9D%EB%AC%B8%EC%9E%90-%EC%88%AB%EC%9E%90-%EC%B6%9C%EB%A0%A5%ED%95%98%EA%B8%B0d-i-x-o-f-lf

 

서식문자 - 숫자 출력하기(%d, %i, %x, %o, %f, %lf)

이번에는 printf()함수의 다른 기능에 대해서 알아보겠습니다. 이 함수는 print formatted에서 print에 f를 추가하여 이름을 지은 만큼 '서식화된 문자(서식 문자)'에 따라 다양한 출력 형식을 갖습니다.

jcoding7.tistory.com

이어 이번에는 문자와 문자열에 대한 출력에 대해서 알아보겠습니다.

서식 문자를 사용하면 숫자 외에도 문자와 문자열을 출력할 수 있습니다. 서식 문자 %c와 %s는 문자와 문자열을 출력할 때 사용합니다. 다음 예제는 문자와 문자열을 출력하는 프로그램을 작성해 보겠습니다.

먼저 문자와 문자열 엄연히 다른 문자입니다. 따라서 문자는 %c, 문자열은 %s로 정확하게 구분해서 사용해야 합니다.

위 예제는 문자열 "A"를 %s가 아닌 %c 서식 문자를 사용하면 안된다는 것을 보여주는 예제입니다. 

그럼 문자와 문자열이 무엇이 다른지 알아보겠습니다.

문자 문자열
문자 한글자 문자+배열
문자 여러글자
' (작은따옴표)로 묶는다. " (큰따옴표)로 묶는다.
'a'
'A'
'가'
"abc"
"ABC"
"가나다"

위 표와 같이 문자는 알파벳 한문자, 한글 한문자를 의미하며, 문자열은 알파벳 한문자, 한문자를 배열에 저장하여 여러문자열을 의미합니다.

다음 예제는 문자와 문자열을 구분하여 출력하는 프로그램을 작성해 보겠습니다.

"아프가니스탄 탈레반"은 한 문자가 여러개가 합쳐져서 만들어진 문장이기 때문에 문자가 아니라 문자열이며, %c가 아닌 %s를 사용하여 출력합니다.

'아프가니스탄 탈레반' 문자열을 작은따옴표로 묶으면 문자로 인식이 되며, %c로 출력하게 되면, 위 예제처럼 출력이 되지 않는다는 것을 알 수 있습니다.

다음 예제는 이들을 사용하여 알파벳과 문자열을 출력하고 간단한 덧셈 연산을 수행하는 프로그램을 작성해 보겠습니다.

6행에서 큰따옴표로 둘러싸인 문자열 내에 서식 문자 %c를 이용하여 문자 하나를 출력합니다.

9행에서 서식 문자 %s를 사용하여 "a를 대문자로 표현하면"이라는 문자열을 출력하고, 서식 문자%c를 이용하여 대문자 A를 출력합니다. C언어에서는 큰따옴표를 사용하여 문자열을 인식하고 작음따옴표를 사용하여 문자를 인식합니다.

6행과 9행은 실행 결과가 같지만 다르게 표현된 출력 방법입니다. 12행에서 서식 문자 %s, %d, %s를 printf() 함수 하나에서 다양하게 표현하고 있다는 것을 알 수 있습니다.

 

반응형

댓글