לכתוב פונקציה *רקורסיבית* ב C, המקבלת *רק* מצביעים לשני מערכים A,B ואת אורכם N, ומשימה במערך B את הסכום המצטבר של איברים מהמערך A - ללא שינוי ערכים במערך A. ללא מעטפת, ללא משתנים גלובליים. * כן, זו שאלה משיעורי בית.
כן, אפשר.. לא, לא יותר מדי מסובך. אתה שולט באורך, ואתה שולט ע"י אריתמטיקת מצביעים על האיבר הראשון שאתה מכניס... האיבר ה-i במערך B הוא B[i-1]+ A ומכאן שלא צריך גם לולאות... רמז: תנאי העצירה שלך צריך להיות length == 0... בהצלחה!
כשאתה ניגש לכתובת לא מוקצית, ההתנהגות לא מוגדרת, ולכן לא בהכרח תעוף. אם זה עבד לך הפעם, לא בטוח מה יקרה בהרצה הבאה (הסבירות לעוף תלויית קומפיילר ומערכת הפעלה). אפשר פשוט ללכת אינדקס אחד אחורה, אבל גם אז חשוב לשים לב למקרי הקצה האלו.