printf 함수는 C 언어에서 표준 출력(일반적으로 콘솔)에 텍스트를 출력할 때 사용됩니다. 문자열, 숫자, 문자 등 다양한 데이터를 출력할 수 있으며, 프로그래밍 과정에서 디버깅이나 결과 확인에 필수적인 함수입니다.
1. printf 함수 기본 문법
#include <stdio.h>
int main() {
printf("Hello, World!\n");
return 0;
}
설명 :
- #include <stdio.h>: printf 함수를 사용하기 위해 표준 입출력 헤더를 포함합니다.
- \n: 줄바꿈(newline) 문자입니다.
- 문자열은 큰따옴표(" ")로 감쌉니다.
2. 주요 서식 지정자(format specifier)
printf는 다양한 서식 지정자를 사용하여 값을 출력합니다.
서식 지정자 | 설명 | 예제 출력 |
%d | 정수 (10진수) | 42 |
%f | 실수 (부동소수점) | 3.141593 |
%.2f | 소수점 이하 2자리 | 3.14 |
%c | 단일 문자 | A |
%s | 문자열 | Hello |
%x/%X | 16진수 (소문자/대문자) | ff / FF |
%% | % 문자 출력 | % |
예제 코드:
int age = 25;
float height = 175.5;
char grade = 'A';
char name[] = "Alice";
printf("이름: %s\n", name);
printf("나이: %d세\n", age);
printf("키: %.1fcm\n", height);
printf("등급: %c\n", grade);
출력 결과:
이름: Alice
나이: 25세
키: 175.5cm
등급: A
3. 고급 사용법
3.1. 너비(width)와 정렬
printf("%-10s | %5d\n", "이름", 30); // 왼쪽 정렬
printf("%10s | %5d\n", "Bob", 27); // 오른쪽 정렬
출력 결과:
이름 | 30
Bob | 27
3.2. 0으로 채우기 (Zero Padding)
int num = 7;
printf("%05d\n", num); // 00007 출력
3.3. 다양한 진법 출력
int number = 255;
printf("10진수: %d\n", number);
printf("16진수: %x\n", number);
printf("8진수: %o\n", number);
출력 결과
10진수: 255
16진수: ff
8진수: 377
4. printf 사용 시 주의할 점
- 서식 지정자와 데이터 타입 일치: %d에는 정수형, %f에는 실수형이 전달되어야 합니다.
- 문자열 끝에 \n 추가: 출력 후 줄바꿈을 적절히 추가하여 가독성을 높입니다.
- 버퍼 오버플로우 주의: printf는 입력 크기를 제한하지 않으므로, 대용량 문자열 출력 시 주의합니다.
5. 실전 예제: 계산기 출력
#include <stdio.h>
int main() {
int a = 10, b = 3;
printf("덧셈: %d + %d = %d\n", a, b, a + b);
printf("뺄셈: %d - %d = %d\n", a, b, a - b);
printf("곱셈: %d * %d = %d\n", a, b, a * b);
printf("나눗셈: %d / %d = %.2f\n", a, b, (float)a / b);
return 0;
}
출력 결과:
덧셈: 10 + 3 = 13
뺄셈: 10 - 3 = 7
곱셈: 10 * 3 = 30
나눗셈: 10 / 3 = 3.33
6. 결론
printf 함수는 C 언어에서 데이터를 화면에 출력하는 가장 기본적이고 중요한 함수입니다. 다양한 서식 지정자와 옵션을 적절히 사용하면 출력 포맷을 자유롭게 제어할 수 있습니다. printf를 활용한 풍부한 연습은 C 프로그래밍 실력을 향상시키는 지름길입니다.
'Standard C' 카테고리의 다른 글
C 언어 fclose 사용법 완벽 가이드 (0) | 2025.02.22 |
---|---|
C 언어 clearerr 사용법 완벽 가이드 (0) | 2025.02.22 |
C 언어 BUFSIZ 사용법 완벽 가이드 (0) | 2025.02.22 |
C 언어 sprintf 사용법 완벽 가이드 (0) | 2025.02.22 |
C 언어 memcpy 사용법 완벽 가이드 (0) | 2025.02.22 |