Aracılığıyla paylaş


printf, _printf_l, wprintf, _wprintf_l

Standart çıkış akışı biçimlendirilmiş çıktıyı yazdır. Bu işlevlerin daha güvenli sürümlerinde kullanılabilir; 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]... 
);

Parametreler

  • format
    Biçim denetimi.

  • argument
    İsteğe bağlı bağımsız değişkenler.

  • locale
    Kullanılacak yerel ayarı.

Dönüş Değeri

Bir hata oluşursa, yazdırılan karakter veya negatif bir değer verir. format Olan NULL, açıklandığı gibi geçersiz bir parametre işleyici çağrılır Parametre doğrulama. Devam etmek için işlev verir -1 ve kümelerini yürütme izni varsa errno için EINVAL. EOF (0XFFFF) içinde karşılaşılan argument, işlev-1 değerini döndürür.

Hakkında bilgi için errno ve hata kodlarý _doserrno, hatano, _sys_errlist ve _sys_nerr.

Notlar

printf İşlevi biçimlendirir ve bir dizi karakter ve değer standart çıkış akış için baskı stdout. Bağımsız değişkenler izlerseniz, format dizesi, format dize bağımsız değişkenler için çıktı biçimini belirleyen özellikleri içermesi gerekir. printfve fprintf dışında aynı şekilde davranır printf çıktısına yazar stdout yerine bir hedef türü FILE.

wprintfgeniş karakter sürümü printf; formatbir geniş karakter dizesidir. wprintfve printf akış ANSI modunda açılırsa aynı şekilde davranır. printfşu anda çıktı UNICODE akımına desteklemez.

Bu işlevleri sürümlerini _l sonek dışında geçerli iş parçacığı yerel geçirilen yerel ayar parametresi kullandıkları aynı.

Genel metin eşlemeleri yordamına girildi

TCHAR.H yordamına girildi

_UNICODE & _mbcs tanımlanmamış

Tanımlanan _mbcs

tanımlanan _UNICODE

_tprintf

printf

printf

wprintf

format Bağımsız değişkeni oluşur sıradan karakterler çıkış sıralarını ve (bağımsız izlerseniz, format) biçimlendirir. Sıradan karakterler ve çıkış sıralarını kopyalanır stdout , görünümlerini sırasına göre. Örneğin, satır:

printf("Line one\n\t\tLine two\n"); 

bir çıktı üretir:

Line one
        Line two

Biçimlendirir her zaman yüzde işaretiyle başlar (%) ve soldan sağa okuyun. Zaman printf karşılaştığı ilk biçim belirtimini (varsa), sonra ilk bağımsız değişkenin değeri dönüştürür format ve buna bağlı olarak verir. İkinci biçim belirtimi dönüştürülür ve çıktı, ikinci bağımsız değişken olur ve böyle devam eder. Biçim belirtimleri sayısından daha fazla bağımsız değişken varsa, ek bağımsız değişkenler göz ardı edilir. Biçim belirtimleri için yeterli bağımsız değişken ise sonuçlar tanımsızdır.

Güvenlik NotuGüvenlik Notu

Emin format kullanıcı tanımlı bir dize değil.

Genel metin eşlemeleri yordamına girildi

Tchar.h yordamına girildi

_UNICODE ve _mbcs tanımlanmamış

Tanımlanan _mbcs

Tanımlanan _UNICODE

_tprintf

printf

printf

wprintf

_tprintf_l

_printf_l

_printf_l

_wprintf_l

Gereksinimler

Yordamı

Gerekli başlık

printf, _printf_l

<stdio.h>

wprintf, _wprintf_l

<stdio.h> veya <wchar.h>

Konsol desteklenen değil Windows Mağazası apps. Konsolu ile ilgili standart akış tanıtıcıları stdin, stdout, ve stderr, c çalışma zamanı işlevlerini de kullanılmadan önce yönlendirilecek Windows Mağazası apps. Ek uyumluluk bilgileri için bkz: Uyumluluk giriş.

Örnek

// 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);
}

Örnek Çıktı

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 Eşdeğeri

Ayrıca bkz.

Başvuru

Kayan nokta türü desteği

G/ç

Yerel ayar

fopen, _wfopen

_fprintf_p, _fprintf_p_l, _fwprintf_p, _fwprintf_p_l

scanf, _scanf_l, wscanf, _wscanf_l

sprintf, _sprintf_l, swprintf, _swprintf_l, __swprintf_l

vprintf işlevleri

_set_output_format