3 תשובות
זה הבונוס בשבוע 2 כן?
בכל מקרהאם הבנתי את זה נכון הקצאות זכרון של מערכים הם בלוקים של תאים בזכרון זאת אומרת שאם מגדירים מערך בגודל 5 מסוג אינט נגיד זה יקצה 20 בתים רצופים בזכרון שהשם של המערך הוא הכתובת של הראשון אז אם את רוצה לגשת לזה בפור את יכולה לעבור על כל המערך וכל פעם להגדיל את הפויינטר ב4 (בגלל שזה ארבעה בתים כי זה אינט) או לעשות פור של המצביע בעצמו שהוא קופץ ב4 ושהוא יהיה יותר קטן מהערך שלו פלוס הגודל כפול 4 נגיד ושניגשים לזה זה כמו ערך של פויינטר כי הגדלת אותו ב4 אז הוא מצביע על איזור אחר בזכרון
בכל מקרהאם הבנתי את זה נכון הקצאות זכרון של מערכים הם בלוקים של תאים בזכרון זאת אומרת שאם מגדירים מערך בגודל 5 מסוג אינט נגיד זה יקצה 20 בתים רצופים בזכרון שהשם של המערך הוא הכתובת של הראשון אז אם את רוצה לגשת לזה בפור את יכולה לעבור על כל המערך וכל פעם להגדיל את הפויינטר ב4 (בגלל שזה ארבעה בתים כי זה אינט) או לעשות פור של המצביע בעצמו שהוא קופץ ב4 ושהוא יהיה יותר קטן מהערך שלו פלוס הגודל כפול 4 נגיד ושניגשים לזה זה כמו ערך של פויינטר כי הגדלת אותו ב4 אז הוא מצביע על איזור אחר בזכרון
שואל השאלה:
וואו תודה על הפירוט!
בעקרון זה חלק מתרגיל שבוע 3, יש לי איזשהו קוד שאני רוצה לשים בו לולאה שעוברת על המערך עם פוינטר (ללא אינדקס או משתנה עזר נוסף) ובאמת שאני תקועה על זה המון כי אני עדיין לא משופשפת בחומר של שילוב מצביע עם מערך.
הבנתי בערך את מה שכתבת, אשמח אם תוכל לכתוב לי נוסחא של לולאת while/for עם מצביע שממחישה את ההסבר בשביל חידוד
בכל מקרה, תודה רבה:)
וואו תודה על הפירוט!
בעקרון זה חלק מתרגיל שבוע 3, יש לי איזשהו קוד שאני רוצה לשים בו לולאה שעוברת על המערך עם פוינטר (ללא אינדקס או משתנה עזר נוסף) ובאמת שאני תקועה על זה המון כי אני עדיין לא משופשפת בחומר של שילוב מצביע עם מערך.
הבנתי בערך את מה שכתבת, אשמח אם תוכל לכתוב לי נוסחא של לולאת while/for עם מצביע שממחישה את ההסבר בשביל חידוד
בכל מקרה, תודה רבה:)
אנונימית
void arr_editor(int* parr)
{
int i = 0, j = 0;
for (i = 0; i < size; i++)
{
printf("enter value for index %d: ", i);
scanf("%d", parr);//getting input and puting it in the arr
getchar();
parr += 4;//jumping to the next index in the arr
}
}
זה לקליטה למערך נגיד אבל את מבינה נראלי את הקונספט אם את רוצה לעשות את זה רק עם פוינטר פשוט תעשי פור שהוא קופץ ב4 ושהוא קטן מהפוינטר פלוס המקס כפול כמה בתים המשתנה של המערך מכיל
{
int i = 0, j = 0;
for (i = 0; i < size; i++)
{
printf("enter value for index %d: ", i);
scanf("%d", parr);//getting input and puting it in the arr
getchar();
parr += 4;//jumping to the next index in the arr
}
}
זה לקליטה למערך נגיד אבל את מבינה נראלי את הקונספט אם את רוצה לעשות את זה רק עם פוינטר פשוט תעשי פור שהוא קופץ ב4 ושהוא קטן מהפוינטר פלוס המקס כפול כמה בתים המשתנה של המערך מכיל
באותו הנושא: