Jika anda tidak tahu tentang %i dan %d penentu format, ikut garis panduan artikel ini.
%i Penentu Format
Dalam bahasa pengaturcaraan C, the %i digunakan untuk mencetak integer yang ditandatangani apabila digunakan dengan fungsi printf(). Integer yang ditandatangani ialah yang boleh sama ada positif atau negatif. Dalam pengaturcaraan C apabila menggunakan %i nilai argumen yang dilalui mestilah ungkapan atau jenis integer yang secara automatik menilai dalam jenis data integer. Anda juga boleh menggunakan %i penentu untuk membaca nilai aksara yang terdapat dalam julat integer yang ditandatangani.
%d Penentu Format
The %d penentu format sebaliknya digunakan untuk mencetak integer yang tidak ditandatangani dalam bahasa pengaturcaraan C. Di sini integer tidak bertanda ialah integer positif. Dalam bahasa C apabila anda menggunakan %d maka nilai jenis argumen int .
Perbezaan
Kedua-duanya %i dan %d penentu format sering digunakan dalam bahasa pengaturcaraan C untuk mencetak integer. Mereka mungkin kelihatan serupa dari segi penggunaan serta berkelakuan sama apabila menggunakan fungsi printf().
Mari kita buat susulan dengan kod sampel di mana kedua-dua penentu format digunakan.
#include
int utama ( ) {
int digit ;
printf ( 'Sila Masukkan sebarang digit: ' ) ;
scanf ( '%i' , & digit ) ;
printf ( ' \n Digitnya ialah: %i \n ' , digit ) ;
printf ( 'Digitnya ialah: %d \n ' , digit ) ;
kembali 0 ;
}
Dalam kod ini kita mula-mula memulakan pembolehubah dan mengambil nilai daripada pengguna menggunakan scanf(). Kemudian kami menunjukkan output menggunakan %d dan %i .
Pengeluaran:
Kedua-duanya memberikan output yang sama apabila digunakan dengan printf() fungsi. Tidak kira sama ada anda memasukkan nilai positif atau negatif, hasilnya akan sentiasa sama.
Walau bagaimanapun, jika kita melihat fungsi scanf, kita boleh membezakannya dengan betul. Dalam kod di atas, jika kita memasukkan nilai perpuluhan seperti ā012ā . Jika kita menggunakan ā%dā bukannya %i, anda akan mendapat output 12. Sebabnya ialah %d mengabaikan nilai sifar 0 daripada input pengguna.
#includeint utama ( ) {
int digit ;
printf ( 'Sila Masukkan sebarang digit: ' ) ;
scanf ( '%d' , & digit ) ;
printf ( ' \n Digitnya ialah: %i \n ' , digit ) ;
printf ( 'Digitnya ialah: %d \n ' , digit ) ;
kembali 0 ;
}
Pengeluaran
Jika nilai yang sama dimasukkan menggunakan %i seperti dalam fungsi scanf(), output akan menjadi 10 dalam kes ini. Sebabnya ialah %i mencetak nilai perpuluhan 012 (perwakilan oktal).
#includeint utama ( ) {
int digit ;
printf ( 'Sila Masukkan sebarang digit: ' ) ;
scanf ( '%i' , & digit ) ;
printf ( ' \n Digitnya ialah: %i \n ' , digit ) ; //keluaran kasut
printf ( 'Digitnya ialah: %d \n ' , digit ) ; //keluaran kasut
kembali 0 ;
}
Kesimpulan
Penentu format ialah corak yang pada mulanya bermula dengan % tanda dan ia biasanya memberitahu kami jenis data yang diletakkan dalam input dan data yang akan ditunjukkan. %d dan %i adalah dua penentu yang digunakan secara meluas dalam pengaturcaraan C. Ia serupa apabila digunakan dengan fungsi printf() tetapi ia mengeluarkan hasil yang berbeza apabila digunakan dengan fungsi scanf().