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

[C 언어] 문자열을 출력하는 puts와 fputs 함수

by khsnote22 2022. 12. 10.
// 문자열을 출력하는 puts와 fputs 함수

#include <stdio.h>

int main(void)
{
	char str[80] = "apple juice"; // 배열에 문자열 초기화
	char* ps = "banana"; // 포인터에 문자열 연결

	puts(str); // apple juice 출력하고 줄 바꿈
	fputs(ps, stdout); // banana만 출력
	puts("milk"); // bananan에 이어 milk 출력
	
	return 0;
}

puts와 fputs 함수는 문자열의 시작 위치부터 널 문자가 나올 때까지 모든 문자를 출력합니다. 따라서 char 배열의 배열명이나 문자열 상수를 연결하고 있는 포인터를 인수로 줄 수 있습니다. 물론  문자열 상수를 직접 사용하는 것도 가능합니다. 어떤 경우든 문자열에서 첫 번째 문자의 주소가 되므로 결국 문자열이 출력됩니다. 

 

puts 함수는 fputs 함수와 달리 문자열을 출력한 후에 자동으로 줄을 바꿔주므로 편리하지만 줄을 바꾸고 싶지 않을 때는 적당하지 않습니다. 실행결과를 보면 apple juice는 puts로 출력하여 출력 후 자동으로 줄이 바뀌었으며 banana는 fputs로 출력하여 banana가 출력된 후에 milk가 바로 이어서 출력된 것을 알 수 있습니다.