printf, _printf_l, wprintf, _wprintf_l
형식이 지정 된 출력을 표준 출력 스트림에 인쇄 합니다.보다 안전한 버전의이 함수를 사용할 수 있습니다. see printf_s, _printf_s_l, wprintf_s, _wprintf_s_l.
int printf(
const char *format [,
argument]...
);
int _printf_l(
const char *format,
locale_t locale [,
argument]...
);
int wprintf(
const wchar_t *format [,
argument]...
);
int _wprintf_l(
const wchar_t *format,
locale_t locale [,
argument]...
);
매개 변수
format
컨트롤에 서식을 지정 합니다.argument
선택적 인수입니다.locale
사용 하는 로캘.
반환 값
오류가 발생 하면 인쇄 문자 또는 음수 값을 반환 합니다.경우 format 는 NULL에 설명 된 대로 잘못 된 매개 변수 처리기를 호출 매개 변수 유효성 검사.계속 하려면 함수는-1 반환 하 고 설정 실행이 허용 되는 경우 errno 에 EINVAL.경우 EOF (0xFFFF)에서 발견 된 argument,-1을 반환 하는 함수.
에 대한 내용은 errno 및 오류 코드를 참조 하십시오. _sys_nerr, _doserrno, errno, _sys_errlist,.
설명
printf 서식을 지정 하 고 일련의 문자 및 값을 표준 출력 스트림에 출력 하는 함수 stdout.인수를 따를 경우는 format 문자열은 format 문자열 인수에 대한 출력 형식을 결정 하는 사양에 포함 되어야 합니다.printf및 발생 를 제외 하 고는 동일 하 게 동작 printf 출력에 씁니다 stdout 아니라 대상 형식의 FILE.
wprintf와이드 문자 버전인 printf. format와이드 문자 문자열이입니다.wprintf및 printf 스트림 ANSI 모드에서 연 경우 동일 하 게 동작 합니다.printf현재 출력 스트림으로 유니코드를 지원 하지 않습니다.
이러한 함수 버전을 _l 접미사는 전달 하지 않고 현재 스레드 로캘은 로캘 매개 변수를 사용 하는 것을 제외 하 고 동일 합니다.
일반 텍스트 루틴 매핑
TCHAR입니다.H 루틴 |
_UNICODE 및 _Mbcs가 정의 되어 있지 않습니다 |
_Mbcs가 정의 |
_unicode가 정의 |
---|---|---|---|
_tprintf |
printf |
printf |
wprintf |
format 인수에 일반 문자를 이스케이프 시퀀스로 구성 됩니다 및 (인수를 따를 경우 format) 형식 사양을.일반 문자 및 이스케이프 시퀀스 복사 됩니다 stdout 해당 모양 순서 대로.예를 들어, 다음 줄은
printf("Line one\n\t\tLine two\n");
출력은 다음과 같습니다.
Line one
Line two
형식 사양을 는 백분율 기호 항상 시작 (%)와 왼쪽 오른쪽으로 읽습니다.때 printf 첫 번째 형식 사양 (있는 경우)을 발견 한 후 첫 번째 인수의 값을 변환 format 한 후 그에 따라 출력.두 번째 인수를 변환 하 고 출력을 둘째 형식 사양을 사용 하면 등.인수를 형식 사양을 보다 더 있을 경우 추가 인수는 무시 됩니다.모든 형식 사양에 대한 인수가 충분 하지 않습니다 경우 결과 정의 되지 않습니다.
보안 정보 |
---|
되도록 format 사용자 정의 하는 문자열이 아닙니다. |
일반 텍스트 루틴 매핑
Tchar.h 루틴 |
_UNICODE 및 _mbcs가 정의 되어 있지 않습니다 |
_Mbcs가 정의 |
_Unicode가 정의 |
---|---|---|---|
_tprintf |
printf |
printf |
wprintf |
_tprintf_l |
_printf_l |
_printf_l |
_wprintf_l |
요구 사항
루틴 |
필수 헤더 |
---|---|
printf, _printf_l |
<stdio.h> |
wprintf, _wprintf_l |
<stdio.h> 또는 <wchar.h> |
콘솔에서 지원 되지 않습니다 Windows 스토어 응용 프로그램입니다.콘솔에 연결 된 표준 스트림 핸들 stdin, stdout, 및 stderr, C 런타임 함수를 사용 하기 전에 이동 해야 Windows 스토어 응용 프로그램입니다.추가 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.
예제
// crt_printf.c
// This program uses the printf and wprintf functions
// to produce formatted output.
#include <stdio.h>
int main( void )
{
char ch = 'h',
*string = "computer";
wchar_t wch = L'w',
*wstring = L"Unicode";
int count = -9234;
double fp = 251.7366;
// Display integers
printf( "Integer formats:\n"
" Decimal: %d Justified: %.6d "
"Unsigned: %u\n",
count, count, count, count );
// Display decimals
printf( "Decimal %d as:\n Hex: %Xh "
"C hex: 0x%x Octal: %o\n",
count, count, count, count );
// Display in different radixes
printf( "Digits 10 equal:\n Hex: %i "
"Octal: %i Decimal: %i\n",
0x10, 010, 10 );
// Display characters
printf("Characters in field (1):\n"
"%10c%5hc%5C%5lc\n",
ch, ch, wch, wch);
wprintf(L"Characters in field (2):\n"
L"%10C%5hc%5c%5lc\n",
ch, ch, wch, wch);
// Display strings
printf("Strings in field (1):\n%25s\n"
"%25.4hs\n %S%25.3ls\n",
string, string, wstring, wstring);
wprintf(L"Strings in field (2):\n%25S\n"
L"%25.4hs\n %s%25.3ls\n",
string, string, wstring, wstring);
// Display real numbers
printf("Real numbers:\n %f %.2f %e %E\n",
fp, fp, fp, fp );
// Display pointer
printf( "\nAddress as: %p\n", &count);
}
샘플 출력
Integer formats:
Decimal: -9234 Justified: -009234 Unsigned: 4294958062
Decimal -9234 as:
Hex: FFFFDBEEh C hex: 0xffffdbee Octal: 37777755756
Digits 10 equal:
Hex: 16 Octal: 8 Decimal: 10
Characters in field (1):
h h w w
Characters in field (2):
h h w w
Strings in field (1):
computer
comp
Unicode Uni
Strings in field (2):
computer
comp
Unicode Uni
Real numbers:
251.736600 251.74 2.517366e+002 2.517366E+002
Address as: 0012FF3C
해당 .NET Framework 항목
참고 항목
참조
_fprintf_p, _fprintf_p_l, _fwprintf_p, _fwprintf_p_l
scanf, _scanf_l, wscanf, _wscanf_l