עבור לתוכן

complicated declaration c

Featured Replies

פורסם

שלום לכולם...
יש לי בעיה עם הבנה של ביטוי מורכב בשפת C אשמח להכוונה

int *(*table())[30]

לפי מה שאני מבין מדובר בפונקציה שלא מקבלת ארגומנטחם המחזירה מצביע למערך בגודל 30 שבו בכל תא מצביע לטיפוס מסוג int
אם זה נכון אז איך שורת ההחזרה אמורה להיראות ?!

return **arr

ואם זה לא נכון אני אשמח לתיקון

פורסם

לא הבנת נכון. כשיש כזה דבר:

int (*a)()

אז לא מדובר בפונקציה בשם a, אלא מדובר במצביע לפונקציה. השם של המצביע הוא a.

הדבר הזה:

int *(*table)()

הוא מצביע לפונקציה שמחזירה *int. 

נערך על-ידי שניצל

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים