לגבי c - מה פירוש unsigned int long?

BravoMan

Active member
הפונקציה sscanf עובדת בדיוק כמו הפונקציה

scanf, רק במקום לקרוא תווים מהמקלדת ולפרש אותם, היא קוראת תווים ממחרוזת ומפרשת אותם.
&nbsp
עכשיו ברור?
 

tom1992

New member
את זה הבנתי, אך לא הבנתי

מדוע היא מכניסה לערכי המערך avg את הערכים שהכניסה. מדוע היא לא הכניסה , נניח 9 , 2 ו-. ל-3 המקומות הראשונים במערך הזה, בהתאמה ?
 

BravoMan

Active member
לא, לא הבנת.

אם אומרים ל-scanf לפרש את התווים מהמקלדת כמספרים עשרוניים ע"י כתיבת f% האם היא תתעקש להמשיך להתייחס עליהם כתווים?
&nbsp
אם היית נותן את אותה מחרוזת פורמט ואותם כתובות משתנים ל-scanf, ומקליד את התווים בדוגמה בשורת הקלט במקום בקוד, מה היה הפלט?
&nbsp
אז, אם הבנת ש-sscanf עובדת בדיוק כמו scanf, רק במקום לקרוא תווים מהמקלדת היא קוראת תווים ממחרוזת, הרי ברור לך שהפלט צריך להיות זהה, והוא צריך להיות לפי f% כי זה מה שכתוב, ולא c% שלא כתוב בשום מקום!
 

BravoMan

Active member
חכה, יש עוד פונקציות במשפחה הזו שאתה

עתיד להכיר.
למשל, יש את fscanf.
הפרמטר הראשון שלה הוא קובץ פתוח, והיא עושה בדיוק את מה ש-scanf עושה למקלדת, רק עם קבצים.
גם קבצים מורכבים ממערך תווים, אבל גם אותם בסופו של דבר הפונקציה מפרשת לא כתווים, אלא כמה שאתה בתור מתכנת אומר לה לפרש אותם.
&nbsp
זה כל הראיון במשפחת פונקציות scanf - לאפשר לך בצורה נוחה לקחת אוסף בתים (כי כל דבר במחשב הוא אוסף בתים), ולא משנה אם הם מגיעים ממערך בזיכרון, קובץ על דיסק או מקלדת, ולפרש אותם בצורות שונות ומשונות - כטקסט, מספרים עשרוניים, מספרים שלמים וכו'.
 
למעלה