מה ההבדל בין "% c" ל- "% c" (שימו לב לשטח) בשפה 'C'? לדוגמה, scanf ("% c", VAR) ו- scanf ("% c", VAR).


תשובה 1:

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

כעת ישנם כמה דברים הקשורים למפרטי פורמט זה. הרווחים שלפני הסמל "%" לא אומר כלום. אך למספרים שבין הסמל% לאות יש משמעות כלשהי. זה שימושי עבור סוגי נתונים כמו מספרים שלמים, צף וכו '.

לפני כן, אני אגיד לך ששאלתך זקוקה לתיקון כלשהו, ​​הצהרת scanf כתובה כך ...

scanf ("% c", & VAR);

במקום

scanf ("% c", VAR);

אל תשכח לציין את "&" (אמפרסנד) לפני שם המשתנה שכן אנו זקוקים לכתובת של VAR.

מהדוגמה הבאה תוכלו להבין מה אני אומר

int var;
printf ("הזן את הערך עבור var:");

scanf ("% d",% var); // פעולה זו תסרוק את הערך מהקונסולה כפי שהיא
scanf ("% 3d",% var); // פעולה זו תסרוק את 3 הספרות הראשונות ממספר עצום מהקונסולה.

// ניתן להחיל אותו גם עבור סוג נתוני ציפה
לצוף var1;

scanf ("% 3f", & var1); // פעולה זו תסרוק את המספר לאחר העיגול מהספרה השלישית.

ישנם דברים רבים אחרים שקשורים למפרט הפורמט. אתה יכול לנסות ולחקור את עצמך.