اطلاعیه

Collapse
No announcement yet.

آرایه ی سه بعدی؟!

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    آرایه ی سه بعدی؟!

    سلام آیا می شود یک آرایه ی سه بعدی در زبان C نوشت؟
    من خودم وقتی می خواستم اینکار را انجام بدم نتونستم! :sad:
    من چند آرایه داشتم که اون آرایه ها هر کدام دو بعد داشتن.
    بعد می خواستم این چند آرایه را به صورت پوینتری به یک آرایه ی سه بعدی تعریف کنم ولی آرایه ی من سه بعدی نشد و فقط دو بعد را قبول کرد!!!!
    کد:
    char a[n][m];
    char b[n][m];
    
    char *P[j]={*a,*b};
    من می خواستم اینجوری دستور بدم که نشدش
    کد:
     P[j][n][m]
    و اون را اینجوری قبول می کرد
    کد:
    P[j][n*m]
    می خواستم بدونم کسی راه حلی برای این مشکل من دارد؟
    دکتر چمران در 1311 در تهران متولد شد
    وي در زمان اقامت در آمريکا انجمن اسلامي آمريکا را تأسيس کرد که منجر به قطع بورسيه وي توسط شاه شد.
    او با اينکه يکي از دانشمندان مطرح آمريکا به حساب مي آمد بدون توجه به مدرک به مصر رفت و آموزش نظامي ديد.

    #2
    پاسخ : آرایه ی سه بعدی؟!

    آخه دکتر چمران، شما دیگه چرا؟!!
    اینو امتحان کن اول:
    کد:
    char image[10][20][30];
    .
    .
    image[i][j][k] = i+j+k;
    اگه جواب داد که هـــیـــــچ، اما اگه جواب نداد، یه گریز بزن به اشاره گرِ اشاره کننده به اشاره گر!! یعنی اینجوری:
    کد:
    char ***image;
    int offset;
    .
    .
    //yechizayi baraye hefze tartibe araye...
    offset = i*10+j*20+k;
    ***(image+offset) = i+j+k;
    بیایید با Google آشتی کنیم!

    دیدگاه


      #3
      پاسخ : آرایه ی سه بعدی؟!

      نوشته اصلی توسط محمد رستمی
      آخه دکتر چمران، شما دیگه چرا؟!!
      اینو امتحان کن اول:
      کد:
      char image[10][20][30];
      .
      .
      image[i][j][k] = i+j+k;
      اگه جواب داد که هـــیـــــچ، اما اگه جواب نداد، یه گریز بزن به اشاره گرِ اشاره کننده به اشاره گر!! یعنی اینجوری:
      کد:
      char ***image;
      int offset;
      .
      .
      //yechizayi baraye hefze tartibe araye...
      offset = i*10+j*20+k;
      ***(image+offset) = i+j+k;
      سلام
      وقتی جواب را دیدم ترسیدم !!!
      گفتم نکنه سوال را اشتباه پرسیدم!!!
      ولی نه انگار خب نتونستم بپرسیدم
      ببین من چندتا آرایه ی دو بعدی دارم
      یعنی من چند تا آرایه ی دو بعدی تعریف کردم
      حالا می خواهم این آرایه های دو بعدی را به صورت پوینتری را داخل یک آرایه قرار بدم
      (واقعیتش می دونم کمی سخته که توضیح بدهم به صورتی که متوجهتون کنم)
      پس حالا وقتی من آرایه های دو بعدی را به صورت پوینتری در یک آریه ی دیگر قرار می دهم انتظار داشتم یک آرایه ی سه بعدی داشته باشم!!! که نشد.
      نتیجش این شدش که :
      آدرس آرایه های دو بعدی در براکت اول و مقدار آرایه ی دو بعدی ضرب در سطر و ستون در براکت دوم!!!
      کد:
      const char ia[2][1]={{1},{2}};
      const char ja[2][1]={{2},{3}};
      const char ka[2][1]={{3},{4}};
      const char *s[3]={*ia,*ja,*ka};
      حالا متغیر اشاره گرم یعنی s دارای 2 بعد است من می خواهم این سه بعد باشد!!!!
      دیگه نمی دونم چطوری بگم
      دکتر چمران در 1311 در تهران متولد شد
      وي در زمان اقامت در آمريکا انجمن اسلامي آمريکا را تأسيس کرد که منجر به قطع بورسيه وي توسط شاه شد.
      او با اينکه يکي از دانشمندان مطرح آمريکا به حساب مي آمد بدون توجه به مدرک به مصر رفت و آموزش نظامي ديد.

      دیدگاه

      لطفا صبر کنید...
      X