עבור לתוכן
View in the app

A better way to browse. Learn more.

HWzone

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

error בקימפול.

Featured Replies

פורסם

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

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

מוגדר לי בתחילת התוכנית הראשית מערך int a[9][9][11] I (לא להתייחס ל I זה בגלל בעיות כתיבה).

שלחתי בתוכנית הראשית את הערך בפונקצייה כך function(a) I ובפונקצייה עצמה הצהרתי כך void function(int ***a) I.

רק אם אני מגדיר את המשתנים מצהיר עליהם כ a*** אין בעיה אבל הרי השם מערך בC הוא ההמצביע לאיבר הראשון במערך וכאן מדובר במערך תלת מימדי ולכן לכאורה זה צריך להיות ***a/

בתודה מראש.

פורסם

void function(int ***a

)

אז אתה מעביר פה פוניטר לפוינטר לפוינטר, זה לא ממש מערך תלת-מימדי... (גם לא לכאורה)... תגדיר את זה בפונקציה כמו שהגדרת את זה בחוץ. (או למשל תעביר מערך חד-מימדי).

פורסם

אמנם שם של מערך זה מצביע לתחילת המערך, אבל זה שונה מאוד ממערך של מצביעים שכל אחד מצביע למערך של מצביעים שכל אחד מצביע על מערך של איברים.

במערך תלת מימדי אין שום משמעות ל-

a[i]

אלא רק ל-

a[i][j][k]

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

אם אתה רוצה להעביר את המערך כמערך חד-מימדי, אתה יכול להעביר את

&a[0][0][0]

פורסם

במקרה שהוא מעביר את המערך כחד-מימדי, הוא יצטרך כמובן להגדיר את הפונקציה שתקבל רק int* ולא int***.

ארכיון

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

דיונים חדשים

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.