C printf() 표준 출력장치로 서식에 맞추어 출력
서식에 맞추어 파일로 출력합니다.
- 헤더: stdio.h
- 형태: int *printf( const char *format, ...)
- 인수: const char *format 출력할 데이터 서식
- 반환: int 출력된 문자 수를 반환하며 오류가 발생하면 음수를 반환합니다.
서실 변환 문자열
변환 문자열 | 의미 |
%o | 8진 정수 형식으로 입력 |
%d | 10진 정수 형식으로 입력 |
%ld | long형 10진 정수 형식으로 입력 |
%x | 16진 정수 형식으로 입력 |
%f | float 형 형식으로 입력 |
%lf | double 형 형식으로 입력 |
%c | 문자 형식으로 입력 |
%s | 문자열 형식으로 입력 |
서식 문자열에 옵션을 추가하여 좀 더 다양하게 출력할 수 있습니다.
변환 문자열 | 출력 | 의미 |
printf("%d", 123) | 123 | 표준 출력장치로 출력 |
printf("%5d", 123) | ___123 | 10진수를 5자리에 맞추어 출력, 123앞에 공백 2개 추가 |
printf("%-5d", 123) | 123__ | 10진수를 5자리에 맞추어 출력, 왼쪽 맞춤, 오른쪽에 공백 추가 |
printf("%f", 1.234567) | 1.234567 | 16진 정수 형식으로 출력 |
printf("%4f", 1.234567) | 1.2346 | 소쉄 이하 4자리 출력, 반올림 |
printf("%7.2f", 1.234567) | ___1.23 | 소숫점 포함해서 전체 7자리, 소수점 이하 2자리. 공백 3개가 앞 부분에 추가됩니다. |
printf("%s", "badayak.com") | badayak.com | 문자열 출력 |
printf("%20s", "badayak.com") | _________badayak.com | 문자열 출력 |
printf("%7s", "badayak.com") | badayak.com | 문자열이 더 길면 그대로 출력 |
printf("%.7s", "badayak.com") | badayak | 문자열이 더 길면 잘라서 출력(%점7s) |
printf("%-20s", "badayak.com") | badayak.com_________ | 문자열을 왼쪽 맟춤으로 하여 오른쪽에 모자르는 자리를 공백으로 메꿈 |
printf("%10.2s", "badayak.com") | _________by | 문자열 앞의 두 문자만 출력하되 앞에 공문자를 채워서 전체 10 문자로 출력 |
printf("%-10.2s", "badayak.com") | by_________ | 문자열 앞의 두 문자만 출력하되 뒤에 공문자를 채워서 전체 10 문자로 출력 |
C언어 printf() 함수 예제
#include <stdio.h> int main( void) { char *str = "http://badayak.com"; int ret; ret = printf( "%d %x %f %e %g %s\n", 123, 123, 123.123, 123.123, 123.123, str); printf( "ret=%d\n", ret); return 0; }
C언어 printf() 예제 실행 결과
]$ ./a.out 123 7b 123.123000 1.231230e+02 123.123 http://badayak.com ret=64 ]$
'컴퓨터 > 프로그래밍' 카테고리의 다른 글
C언어 에러 내용 출력 함수 perror() (0) | 2020.03.14 |
---|---|
C언어 errno() 번호의 에러 내용을 구하는 함수 strerror() (0) | 2020.03.14 |
C언어 에러 번호 구하는 변수 errno (0) | 2020.03.14 |