Bagikan melalui


_set_output_format

Menyesuaikan format output yang digunakan oleh fungsi I/O yang diformat.

Penting

Fungsi ini usang. Dimulai di Visual Studio 2015, tidak tersedia di CRT.

Sintaks

unsigned int _set_output_format(
   unsigned int format
);

Parameter

format
[di] Nilai yang mewakili format yang akan digunakan.

Nilai hasil

Format output sebelumnya.

Keterangan

_set_output_format digunakan untuk mengonfigurasi output fungsi I/O yang diformat seperti printf_s. Satu-satunya konvensi pemformatan yang dapat diubah oleh fungsi ini adalah jumlah digit yang ditampilkan dalam eksponen dalam output angka titik mengambang.

Secara default, output angka titik mengambang menurut fungsi seperti printf_s, , wprintf_sdan fungsi terkait di pustaka Visual C++ Standard C mencetak tiga digit untuk eksponen, bahkan jika tiga digit tidak diperlukan untuk mewakili nilai eksponen. Nol digunakan untuk mengalihkan nilai ke tiga digit. _set_output_format memungkinkan Anda untuk mengubah perilaku ini sehingga hanya dua digit yang dicetak dalam eksponen kecuali digit ketiga diperlukan oleh ukuran eksponen.

Untuk mengaktifkan eksponen dua digit, panggil fungsi ini dengan parameter _TWO_DIGIT_EXPONENT, seperti yang ditunjukkan dalam contoh. Untuk menonaktifkan dua digit eksponen, panggil fungsi ini dengan argumen 0.

Persyaratan

Rutin Header yang diperlukan
_set_output_format <stdio.h>

Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas dalam Pengenalan.

Contoh

// crt_set_output_format.c
#include <stdio.h>

void printvalues(double x, double y)
{
   printf_s("%11.4e %11.4e\n", x, y);
   printf_s("%11.4E %11.4E\n", x, y);
   printf_s("%11.4g %11.4g\n", x, y);
   printf_s("%11.4G %11.4G\n", x, y);
}

int main()
{
   double x = 1.211E-5;
   double y = 2.3056E-112;
   unsigned int old_exponent_format;

   // Use the default format
   printvalues(x, y);

   // Enable two-digit exponent format
   old_exponent_format = _set_output_format(_TWO_DIGIT_EXPONENT);

   printvalues(x, y);

   // Disable two-digit exponent format
   _set_output_format( old_exponent_format );

   printvalues(x, y);
}
1.2110e-005 2.3056e-112
1.2110E-005 2.3056E-112
1.211e-005  2.306e-112
1.211E-005  2.306E-112
1.2110e-05 2.3056e-112
1.2110E-05 2.3056E-112
  1.211e-05  2.306e-112
  1.211E-05  2.306E-112
1.2110e-005 2.3056e-112
1.2110E-005 2.3056E-112
1.211e-005  2.306e-112
1.211E-005  2.306E-112

Baca juga

printf_s, _printf_s_l, wprintf_s, _wprintf_s_l
_get_output_format