כיצד להשתמש ב-%i ו-%d כדי להדפיס מספר שלם ב-C באמצעות printf()

Kyzd Lhstms B I W D Kdy Lhdpys Mspr Slm B C B Mz Wt Printf



בשפת התכנות C, מפרטי הפורמטים ממלאים תפקיד מכריע מכיוון שהם עוזרים לך להציג ערך בפלט. מפרטי פורמטים אלה משמשים עם הפונקציה printf() כדי לציין את סוג הנתונים שיש לפלט. אחד ממפרטי הפורמט הנפוצים בשפת התכנות C הם %אני ו %d המשמשים להדפסת המספרים השלמים.

אם אתה לא יודע על %אני ו %d מפרטי פורמטים, פעל לפי ההנחיות של מאמר זה.

מפרט הפורמט %i

בשפת התכנות C, ה %אני משמש להדפסת מספר שלם בסימן בשימוש עם הפונקציה printf() . המספרים השלמים החתומים הם אלה שיכולים להיות חיוביים או שליליים. בתכנות C בעת שימוש ב-%i, ערך הארגומנט שעובר חייב להיות ביטוי או סוג מספר שלם המוערך באופן אוטומטי בסוג נתונים שלם. אתה יכול גם להשתמש ב %אני מפרט כדי לקרוא ערך תו שמגיע בטווח של מספר שלם בסימן.







מפרט פורמט %d

ה %d מצד שני, מפרט הפורמט משמש להדפסת המספר השלם ללא סימן בשפת התכנות C. כאן מספרים שלמים ללא סימנים הם מספרים שלמים חיוביים. בשפת C כאשר אתה משתמש ב-%d אז הערך של הארגומנטים סוג int .



הבדלים

שניהם %אני ו %d מפרטי פורמט משמשים לעתים קרובות בשפת התכנות C להדפסת מספרים שלמים. הם עשויים להיראות דומים מבחינת השימוש וכן להתנהג בצורה זהה בעת שימוש בפונקציה printf() .



בואו נמשיך עם קוד לדוגמה שבו נעשה שימוש בשני מפרטי הפורמט.





#include

int רָאשִׁי ( ) {

int סִפְרָה ;

printf ( 'אנא הזן ספרה כלשהי:' ) ;

scanf ( '%אני' , & סִפְרָה ) ;

printf ( ' \n הספרה היא: %i \n ' , סִפְרָה ) ;

printf ( 'הספרה היא: %d \n ' , סִפְרָה ) ;

לַחֲזוֹר 0 ;

}

בקוד זה אנו קודם כל מאתחלים משתנה ולוקחים ערך מהמשתמש באמצעות scanf(). לאחר מכן אנו מראים פלט באמצעות %d ו-%i .

תְפוּקָה:



שניהם מספקים פלט דומה בשימוש עם printf() פוּנקצִיָה. זה לא משנה אם תזין את הערך החיובי או השלילי, התוצאה תמיד תהיה זהה.

עם זאת, אם נסתכל על פונקציית scanf, נוכל להבדיל ביניהם בצורה נכונה. בקוד לעיל, אם נזין ערך עשרוני כמו '012' . אם נשתמש '%d' במקום %אני, תקבל את הפלט 12. הסיבה היא %d מתעלם מהערך 0 אפס מקלט המשתמש.

#include

int רָאשִׁי ( ) {

int סִפְרָה ;

printf ( 'אנא הזן ספרה כלשהי:' ) ;

scanf ( '%d' , & סִפְרָה ) ;

printf ( ' \n הספרה היא: %i \n ' , סִפְרָה ) ;

printf ( 'הספרה היא: %d \n ' , סִפְרָה ) ;

לַחֲזוֹר 0 ;

}

תְפוּקָה

אם אותו ערך הוזן באמצעות %אני כמו בפונקציה scanf(), הפלט יהיה 10 במקרה זה. הסיבה היא %אני מדפיס את הערך העשרוני של 012 (ייצוג אוקטלי).

#include

int רָאשִׁי ( ) {

int סִפְרָה ;

printf ( 'אנא הזן ספרה כלשהי:' ) ;

scanf ( '%אני' , & סִפְרָה ) ;

printf ( ' \n הספרה היא: %i \n ' , סִפְרָה ) ; //פלט נעליים

printf ( 'הספרה היא: %d \n ' , סִפְרָה ) ; //פלט נעליים

לַחֲזוֹר 0 ;

}

סיכום

מפרט הפורמט הוא דפוס שמתחיל בתחילה ב- % סימן והוא בדרך כלל אומר לנו איזה סוג של נתונים ממוקמים בקלט ואיזה נתונים יש להציג. %d ו %אני הם שני מפרטים בשימוש נרחב בתכנות C. הם דומים בשימוש עם הפונקציה printf() אך הם מפיקים תוצאות שונות כאשר משתמשים בפונקציה scanf() .