[C언어 기초] 출력함수 puts( )와 printf( ) 공통점과 차이점
함수 puts( )와 printf( )의 공통점
두 함수를 모두 전처리 지시자 #include로 헤더 파일 <stdio.h>를 입력해야 한다.
헤더 파일 <stdio.h>에는 표준 입출력 함수를 위한 함수 원형이 들어있으며
puts( )와 printf( )는 모두 출력함수이기 때문에 <stdio.h>가 필요한 것이다.
#include <stdio.h>
출력하길 원하는 문자열을 괄호( )안에 큰 따옴표""를 넣어 표현이 가능하다.
puts("어이 둘리"); // puts 함수 사용 예시
printf("도우너 어서오고"); // printf 함수 사용 예시
어이 둘리
도우너 어서오고
함수 puts( )
문자열(string)을 출력하는 함수, 오직 문자열!! 만 출력하는 역할이다. 그냥 문자열.. 오직 문자열..
특징으로는 문자열 출력 후 줄 바꿈을 시전 한다는 점이 있다.
이 특징을 활용해서 공백 문자열을 출력하는 puts("");를 만들어서 한 줄을 비우는 스킬을 사용할 수 있다.
printf("\n");보다 puts("");가 한 줄 비울 때 더 빨라서 자주 사용한다.
아래 예제를 통해 확인해보자.
#include <stdio.h>
int main(void)
{
puts("엄");
puts("");
puts("준");
puts("");
puts("식");
return 0;
}
엄
준
식
함수 printf( )
문자열 및 다양한 정보를 서식화 하여 출력하는 함수다. puts( )는 단순히 문자열만을 출력하는데 그쳤다면, printf( )는 문자열뿐만 아니라 정수, 실수, 문자를 출력할 수 있다. puts( )가 할 수 있는 기능을 포함하여 더 많은 정보를 출력할 수 있으니 printf( )는 사실상 puts( )의 상위 호환이다.
puts( )가 문자열 출력 후 줄 바꿈을 했다면 printf( )는 그런 거 없다.
#include <stdio.h>
int main(void)
{
printf("세");
printf("로");
printf("드");
printf("립");
printf("실");
printf("패");
return 0;
}
세로드립실패
따라서 puts( )처럼 문자열 출력 후 줄 바꿈을 하고 싶다면 제어 문자 \n을 큰 따옴표 안에 넣어야 한다.
줄 바꿈의 관점에서 puts(""); = printf("\n"); 둘은 같은 기능을 한다고 볼 수 있겠다.
#include <stdio.h>
int main(void)
{
printf("세\n");
printf("로\n");
printf("드\n");
printf("립\n");
printf("성\n");
printf("공\n");
return 0;
}
세
로
드
립
성
공
앞에서 설명했듯이 문자열뿐만 아니라 정수, 실수, 문자를 출력할 수 있다.제어 문자열과 출력 변수를 적절히 활용해야 한다. printf( )의 사용법은 따로 문서를 만들어서 거기서 설명해야겠다. puts( ) 보다 기능이 매우 다양해서 그게 좋을 듯
#include <stdio.h>
int main(void)
{
printf("아이언맨은 %d년에 개봉했다.", 2008);
return 0;
}
아이언맨은 2008년에 개봉했다.