Ha nem tud róla %én és %d formátum-specifikációit, kövesse e cikk irányelveit.
%i Formátummeghatározó
A C programozási nyelvben a %én Előjeles egész szám kinyomtatására szolgál, ha a printf() függvénnyel együtt használjuk. Az előjeles egész számok lehetnek pozitívak vagy negatívak. A C programozásban %i használatakor az átadott argumentumértéknek kifejezésnek vagy egész típusúnak kell lennie, amely automatikusan egész adattípusban értékelődik ki. Használhatja a %én specifier olyan karakterérték beolvasásához, amely egy előjeles egész szám tartományába esik.
%d formátummeghatározó
A %d A formátumspecifikátor viszont az előjel nélküli egész szám kinyomtatására szolgál a C programozási nyelvben. Itt az előjel nélküli egész számok pozitív egészek. C nyelvben a %d használatakor az argumentumok értéke írja be int .
Különbségek
Mindkét %én és %d A formátumspecifikátorokat gyakran használják a C programozási nyelvben egész számok nyomtatására. Hasonlóan nézhetnek ki a használat szempontjából, és ugyanúgy viselkedhetnek a printf() függvény használatakor.
Következzünk egy mintakóddal, amelyben mindkét formátumspecifikátor használatos.
#include
int fő- ( ) {
int számjegy ;
printf ( 'Kérem, írjon be egy számjegyet:' ) ;
scanf ( '%én' , & számjegy ) ;
printf ( ' \n A számjegy: %i \n ' , számjegy ) ;
printf ( 'A számjegy: %d \n ' , számjegy ) ;
Visszatérés 0 ;
}
Ebben a kódban először inicializálunk egy változót, és értéket veszünk a felhasználótól a scanf() segítségével. Ezután a kimenetet használjuk %d és %i .
Kimenet:
Mindkettő hasonló kimenetet biztosít, ha a printf() funkció. Nem számít, hogy pozitív vagy negatív értéket adsz meg, az eredmény mindig ugyanaz lesz.
Ha azonban a scanf függvényt nézzük, akkor helyesen meg tudjuk különböztetni őket. A fenti kódban, ha decimális értéket adunk meg, mint pl '012' . Ha használjuk '%d' ahelyett %én, megkapod a kimenetet 12. Az ok az %d figyelmen kívül hagyja a felhasználói bevitelből származó 0 nulla értéket.
#includeint fő- ( ) {
int számjegy ;
printf ( 'Kérem, írjon be egy számjegyet:' ) ;
scanf ( '%d' , & számjegy ) ;
printf ( ' \n A számjegy: %i \n ' , számjegy ) ;
printf ( 'A számjegy: %d \n ' , számjegy ) ;
Visszatérés 0 ;
}
Kimenet
Ha ugyanazt az értéket adjuk meg a %én mint a scanf() függvénynél, a kimenet ebben az esetben 10 lesz. Az ok az %én kiírja a 012 decimális értékét (oktális ábrázolás).
#includeint fő- ( ) {
int számjegy ;
printf ( 'Kérem, írjon be egy számjegyet:' ) ;
scanf ( '%én' , & számjegy ) ;
printf ( ' \n A számjegy: %i \n ' , számjegy ) ; //cipő kimenet
printf ( 'A számjegy: %d \n ' , számjegy ) ; //cipő kimenet
Visszatérés 0 ;
}
Következtetés
A formátummeghatározó egy olyan minta, amely kezdetben a következővel kezdődik % jelet, és általában megmondja, hogy milyen adatot helyezünk el a bemenetben, és milyen adatokat kell megjeleníteni. %d és %én a C programozásban széles körben használt két specifikáció. Hasonlóak, ha a printf() függvénnyel használjuk, de eltérő eredményeket adnak, ha a scanf() függvénnyel használjuk.