C언어 초급 - 4장: 입출력 함수 (4.3 putchar()와 puts())

2025. 2. 23. 16:43프로그래밍 언어/C

4.3 putchar()와 puts()

C 언어에서 출력 함수는 데이터를 화면에 출력하는 역할을 합니다.
이 중 단일 문자를 출력하는 putchar()와 문자열을 출력하는 puts()를 사용할 수 있습니다.
둘 다 표준 입출력 라이브러리인 stdio.h 헤더 파일을 포함해야 사용할 수 있습니다.


1. putchar() – 단일 문자 출력

1.1 putchar()란?

  • 단일 문자(1개)를 출력하는 함수.
  • ASCII 코드 값을 출력할 수도 있음.
  • printf("%c", ch);와 비슷하지만, 더 단순한 방식으로 동작.

1.2 putchar() 기본 문법

putchar(문자 또는 변수);

📌 설명

  • putchar('A'); → 문자 'A'를 출력.
  • putchar(변수명); → 문자 변수의 값을 출력.

1.3 putchar() 사용 예제

#include <stdio.h>

int main() {
    char ch = 'A';

    putchar(ch);  // 문자 출력
    putchar('\n');  // 줄 바꿈 추가

    return 0;
}

출력 결과

A

📌 putchar('\n');을 사용하여 줄 바꿈을 추가할 수 있음.


1.4 putchar()로 여러 문자 출력

putchar()는 한 번에 한 문자씩만 출력할 수 있지만, 반복문을 사용하면 여러 개의 문자를 출력할 수 있습니다.

#include <stdio.h>

int main() {
    char str[] = "Hello";
    int i = 0;

    while (str[i] != '\0') {  // 문자열 끝(NULL 문자)까지 반복
        putchar(str[i]);
        i++;
    }

    putchar('\n');  // 줄 바꿈 추가

    return 0;
}

출력 결과

Hello

📌 putchar()는 문자열을 직접 출력하는 기능이 없으므로, 반복문을 사용하여 한 글자씩 출력해야 함.


2. puts() – 문자열 출력

2.1 puts()란?

  • 문자열을 출력하는 함수.
  • printf("%s", str);과 유사하지만 더 간단한 방식으로 동작.
  • 출력 후 자동으로 줄 바꿈(\n)을 추가.

2.2 puts() 기본 문법

puts(문자열 또는 문자열 변수);

📌 설명

  • puts("Hello, World!"); → 문자열 "Hello, World!" 출력 후 자동 줄 바꿈.
  • puts(변수명); → 문자열 변수를 출력.

2.3 puts() 사용 예제

#include <stdio.h>

int main() {
    char message[] = "Hello, World!";

    puts(message);  // 문자열 출력

    return 0;
}

출력 결과

Hello, World!

📌 puts()는 자동으로 줄 바꿈(\n)을 추가하므로 printf("%s\n", str);과 같은 효과를 가짐.


3. putchar()와 puts() 비교

구분 putchar() puts()
출력 대상 단일 문자 (%c) 문자열 (%s)
줄 바꿈 추가 여부 ❌ 없음 (직접 \n 추가 필요) ✅ 자동 줄 바꿈 (\n) 추가
사용 방식 putchar(ch); puts(str);
반환값 출력한 문자 항상 0 이상의 정수 반환
주요 활용 문자 출력 문자열 출력

4. putchar()와 puts() 함께 사용하기

#include <stdio.h>

int main() {
    char ch = 'X';
    char str[] = "C Programming";

    putchar(ch);  // 문자 출력
    putchar('\n');  // 줄 바꿈

    puts(str);  // 문자열 출력 (자동 줄 바꿈 포함)

    return 0;
}

출력 결과

X
C Programming

5. 정리

출력 함수 설명  사용 예제
putchar() 한 문자 출력 (%c) putchar('A');
puts() 문자열 출력 (%s) + 자동 줄 바꿈 puts("Hello!");

📌 언제 사용해야 할까?

  • 문자(char) 출력이 필요하면 → putchar()
  • 문자열(char[]) 출력이 필요하면 → puts()