למה הקוד הזה לא עובר קומפילציה בC?

goldyl

משתמש סופר מקצוען
הנדסת תוכנה
אי אפשר לרשום הערה באמצע מספר
int x=12/*note*/34;
 

גזעי

משתמש מקצוען
הנדסת תוכנה
D I G I T A L
אפילו נניח והוא מוחק את ההערה, מבחינה תחבירית עדין יש פה שתי ספרות מופרדות, תזכור\כרי שכל שפה יש לה "מנתח" תחבירי.
 

@shaye

משתמש מקצוען
D I G I T A L
How are comments usually parsed?
לפי מה שנכתב שם, התשובה המדוייקת הוא, שמקום ההערה מוחלף עם ריוח,
וכמו שכתוב במפורש בתוך ה-C specification:
All comments are replaced with single spaces
ולעניננו זה מכניס ריוח בין שני המספרים - מה שכמובן אינו חוקי.

עדיין מעניין אותי, למה באמת עשו את זה שיהיה ככה?
 

goldyl

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

@shaye

משתמש מקצוען
D I G I T A L
מה שבא אח"כ זה כבר ביטוי חדש מבחינתו.
הסיבה שזה נשקל כ"בא אח"כ" הוא מכיון שהקומפיילר מכניס ריוח במקום ההערה (כמו שציטתי למעלה).
אני שואל למה הוא בכלל מכניס ריוח? הרי הוא יכול להתעלם לגמרי מההערה ואז זה יהיה ביטוי אחד.

אולי @Rרחמים צודק, אבל קצת קשה להאמין שבעידן C כבר חשבו על דברים כאלה...

למה יש למישהו אינטרס שקוד כזה יתקמפל?
דברים מהסוג הזה נקבעים בד"כ ע"פ כללים [לוגיים] מאוד ברורים, לא לפי אינטרסים, ככה לפחות נדמה לי...
 

מבקשת מידע

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

אני שאלתי למה מישהו מנסה או רוצה כזה דבר, סתם סקרנות...
 

5127109

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

Rרחמים

משתמש סופר מקצוען
עיצוב גרפי
איור וציור מקצועי
מוזיקה ונגינה
עריכה תורנית
D I G I T A L
עימוד ספרים
אולי @Rרחמים צודק, אבל קצת קשה להאמין שבעידן C כבר חשבו על דברים כאלה...
גם אם בעידן C לא חשבו על זה, אבל היום אתה לא מקמפל עם קומפיילר של אז אל עם קומפיילר של היום.
 

אולי מעניין אותך גם...

הפרק היומי

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


תהילים פרק קכו

א שִׁיר הַמַּעֲלוֹת בְּשׁוּב יְהוָה אֶת שִׁיבַת צִיּוֹן הָיִינוּ כְּחֹלְמִים:ב אָז יִמָּלֵא שְׂחוֹק פִּינוּ וּלְשׁוֹנֵנוּ רִנָּה אָז יֹאמְרוּ בַגּוֹיִם הִגְדִּיל יְהוָה לַעֲשׂוֹת עִם אֵלֶּה:ג הִגְדִּיל יְהוָה לַעֲשׂוֹת עִמָּנוּ הָיִינוּ שְׂמֵחִים:ד שׁוּבָה יְהוָה אֶת (שבותנו) שְׁבִיתֵנוּ כַּאֲפִיקִים בַּנֶּגֶב:ה הַזֹּרְעִים בְּדִמְעָה בְּרִנָּה יִקְצֹרוּ:ו הָלוֹךְ יֵלֵךְ וּבָכֹה נֹשֵׂא מֶשֶׁךְ הַזָּרַע בֹּא יָבוֹא בְרִנָּה נֹשֵׂא אֲלֻמֹּתָיו:
נקרא  13  פעמים

לוח מודעות

למעלה