בשפת C מה זה EXPERSION ו-STATEMAN?

deepspace

New member
expression זה ביטוי

לדוגמא 2+4, 3=>2 וכו'...

statement אלו כל הפקודות, לדוגמא return 0, if...then וכו'
 

theman81

New member
סבבה אבל למה ההגדרות האלה..

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

deepspace

New member
מה זה כ"כ קריטי ש"צבע" זה שם עצם וש "צובע"

זה פועל?

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

BravoMan

Active member
כי אתה צופה בהרצאות מהטכניון!

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

מלמדים גם את כל מה שמסביב.

הדברים האלה יהיו חשובים כשתצטרך לעבוד על תכונות יותר גדולות, להבין ולבנות לוגיקה, ולייעל תוכנות, וכו'.

אתה לא ממש צריך לדעת מה ההבדל בין statement ל-expression כדי לכתוב תוכנה שקולטת ומחבר מספרים עד שהסכום עובד 10000, אבל אם אי פעם תרצה לכתוב תוכנה כמו Turbo C עצמו, תהיה לזה חשיבות.

אגב, לא תמיד עושים את הבידול הזה, וזה לא רלוונטי לכל שפה.
יש לא מעט דיונים בנושא:
https://www.google.com/#q=expressions+vs+statements
 

nocgod

New member
יש לי 2 הצעות

א. תמצא הרצאות של plural sight על C בשביל מתחילים (יש כאלה מסתובבת באינטרנט)
ב. תמצא את הספר של K&R The C Programming language גם זה ראיתי מסתובב באינטרנט ב PDF (או בספריה...)

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

לפי השפה expression הוא כל דבר אשר אפשר להעריך אותו (לתת ערך של true false, תוצאה של חישוב מתמטיקה או תוצאה של קריאה לפונקציה וכד')
statement הוא כל דבר אשר לא ניתן להעריך לכשעצמו כדוגמא if. for. while וכו'
 
למעלה