עבור לתוכן

|שפת C| איך אני עובר על מערך של מצביעים לVOID ועושה לכל אחד המרה לINT ?

Featured Replies

פורסם

מה השורת השמה שצריך לעשות ?

תודה מראש

פורסם

(int*) nameOfArray[index]

ואם אתה רוצה ערך מתוך זה, שים הכל בסוגריים ולפני זה *

פורסם
  • מחבר

אני רץ בלולאה ולמה שרשמת אני עושה השמה לתוך המערך במקום ה-i ? אח"כ המערך שלי יהפוך להיות מערך של מצביעים לINT ?

פורסם

void* יכול להצביע לכל דבר - ל- int, char, float, הכל, תלוי איך אתה מתייחס אליו.

(int*)nameOfArray

יתייחס אליו כאל מצביע למערך של INT, וכשתבצע השמה לתוכו, הוא יתייחס להשמה כאלה השמה של INT.

זה לא מונע ממך להתייחס אליו מאוחר יותר כמצביע למערך של FLOAT או משהו אחר.

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

ארכיון

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

דיונים חדשים