تبلیغات :
خرید لپ تاپ استوک
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 9 از 9

نام تاپيک: char **a=new char*[9];

  1. #1
    اگه نباشه جاش خالی می مونه
    تاريخ عضويت
    Jan 2009
    پست ها
    242

    پيش فرض char **a=new char*[9];

    میخواستم بدونم که معنی عبارت بالا چی میشه؟
    لطفا کلمه به کلمه بگید..
    ممنون.

  2. #2
    پروفشنال mahdi7s's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    هر جایی می تونه باشه
    پست ها
    757

    پيش فرض

    همان طور که می دانید * علامت اشاره گر هست و یه اشاره گر به آدرسی از حافظه اشاره می کنه که توی این
    آدرس می تونه هر چیزی(مثلا آرایه ای از جمله ها(رشته سبک سی)) باشه واما

    در کد شما وجود دو علامت * نشانه ی وجود دواشاره گر هستش که یکی اشاره گر به char هست و دیگری
    اشاره گری به اشاره گر قبلی(اشاره گر به char ) هستش.

    واما یک رشته(جمله) در سی و سی پلاس چیزی نیست جز اشاره گری به char .

    بنابراین کد شما اشاره گری به یک رشته است. رشته هایی که نمی توانند بیش 9 کاراکتر داشته باشند.

  3. این کاربر از mahdi7s بخاطر این مطلب مفید تشکر کرده است


  4. #3
    اگه نباشه جاش خالی می مونه
    تاريخ عضويت
    Jan 2009
    پست ها
    242

    پيش فرض

    من هیچی نفهمیدم...

  5. #4
    پروفشنال hoax3r's Avatar
    تاريخ عضويت
    Oct 2007
    پست ها
    699

    پيش فرض

    در ادامه صحبت آقا مهدی، در اینجا a یک آرایه 9 عنصری هست که هر عضوش مثل
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    یک اشارگر محسوب میشه، در نتیجه باید برای تک تک این اعضا از عملگر new دوباره استفاده کنید و حافظه از نوع char بگیرین
    مثل این مثال که به هر عضو a یک اشارگر از نوع رشته به طول 25 کاراکتر تخصیص داده شده
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    Last edited by hoax3r; 13-08-2009 at 15:58.

  6. #5
    اگه نباشه جاش خالی می مونه
    تاريخ عضويت
    Jan 2009
    پست ها
    242

    پيش فرض

    ++++++++++++++
    Last edited by ara.look; 20-08-2009 at 21:18.

  7. #6
    پروفشنال hoax3r's Avatar
    تاريخ عضويت
    Oct 2007
    پست ها
    699

    پيش فرض

    9 تا اشارگر از نوع char

  8. #7
    اگه نباشه جاش خالی می مونه
    تاريخ عضويت
    Jan 2009
    پست ها
    242

    پيش فرض

    +++++++++++
    Last edited by ara.look; 20-08-2009 at 21:16.

  9. #8
    داره خودمونی میشه DaneshD's Avatar
    تاريخ عضويت
    May 2009
    محل سكونت
    Sweden
    پست ها
    196

    پيش فرض

    اشاره گر یا pointer یعنی قسمتی از حافظه که بجای اینکه در اون اطلاعات قرار داشته باشه آدرسی قرار داره که اون آدرس در واقع آدرس اون قسمت از حافظه هست که اطلاعات واقعی در اونجا قرار داره. در زبان C یک ستاره * کنار متغیر اونرو تبدیل به اشاره گر میکنه. مثلا int a یعنی مغیر a قسمتی از حافظه هست که در اون یک عدد قرار میگیره. اما int *a یعنی a یک متغیر هست که در اون یک آدرس قسمتی از حافظه قرار میگیره که اون آدرس یک آدرس از حافظه هست که در اون عدد قرار داره.
    توضیحات بقیه کاملا واضح هست.

  10. #9
    پروفشنال mahdi7s's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    هر جایی می تونه باشه
    پست ها
    757

    پيش فرض

    ببینید به نظر من دانستن اسم اشاره گر یا از اینجور چیزا چندان مهم نیست.(با مرور زمان اسم رو یاد می گیرید.)
    بترین راه این هست که کد نویسی کنید و سعی کنید برنامه طوری باشد که جاهایی که نمی دانید و نمی فهمید رو در خروجی چاپ کند.
    برنامه رو می نویسن چیزی نیست که حفظش کنن یا...

    موفق باشید.

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •