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

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




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

نام تاپيک: پایان آرایه کاراکتری چیه در #c چیه؟

  1. #1
    آخر فروم باز sanam.b's Avatar
    تاريخ عضويت
    Jan 2007
    محل سكونت
    ماه
    پست ها
    1,014

    پيش فرض پایان آرایه کاراکتری چیه در #c چیه؟

    سلام به همه دوستان
    سوالم اینه پایان آرایه کاراکتری چیه؟ رشته خودش پایان داره اما در آرایه کاراکتری پایان ندیدم
    اصلا از اول توضیح می دم
    مثلا شما رشته sanam رو در یه آرایه کاراکتری به نام matn قرار میدید
    کدی هم که قرار میدید این جوریه
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    وقتی که شمارنده به کاراکتر n می رسه lheadبه جایی اشاره می کنه که اصلا وجود نداره در نتیجه خطای "خارج ار محدوده آرایه "رو می ده
    گفتند که می تونی با دستور append یه کاراکتر مشخص به آرایه اضافه کنی که اونهم مال string نه کاراکتر.
    پیشنهاد شما در این مورد چیه؟


    البته خیلی ممنون میشم اگه بگید چطوری میشه این کد رو بهینه کرد

    کاری که این کد می کنه اینه که تا وقتی به فاصله خالی نرسیدیم
    همه کاراکتر ها رو میخونه و در یک متغیر رشته ایtemp قرار می ده البته اگر به کاراکتر های پایان خط و";",":" رسید هم باید از حلقه بیاد بیرون

  2. #2
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام

    مشکل شما این است که در #C تفکرات C++Native دارید.

    #C تحت دات نت است و همه چیزش از قبل معلوم و مشخص است و مثل C++Native به اون حد باز نیست که مثلاً آرایه را صرفاً بلوکی از حافظه در نظر بگیرید و حتی بعضاً تجاورز از حدود ان بدون مشکل انجام شود.
    آرایه ها در دات نت نمونه ای از کلاسس System.Array هستند و کاملاً مدیریت شده و مستحکم هستند.

    مثلاً در مورد آرایه شما، matn.Rank تعداد ابعاد آرایه را پس میدهد و یا matn.Length تعداد اعضای آرایه را بر میگرداند، در محیط VS یک نقطه بزنید تا لیست خواص و متدهای آرایه تان ظاهر شود.

    پس برای تشخیص طول آرایه میتوانید از matn.Length استفاده کنید.

    ولی در مورد کد بهینه و #C تر!
    در مورد الگوریتم تان اگر درست متوجه شده باشم سه کاراکتر فاصله و ; و : یک اولویت دارند و باید با رسیدن به هر یک اینها اسکن تمام شود؟

    برای آشنایی بیشتر دو نمونه کد میگذارم
    (
    اضافه کردن به نمونه string ای مثل temp شما صحیح است ولی دات نت را مجبور به کارهای اضافه میکنید که اگر قرار است به تعداد زیاد و مدام و در حلقه این اضافه شدن انجام شود، کلاسس StringBuilder سریعتر جواب میدهد و بهینه تر است.
    )
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    و این کد دوم:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    Last edited by _H2_; 03-08-2008 at 13:40.

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


  4. #3
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام مجدد
    راستی یک پیشنهاد در الگوریتم اصلیتان دارم، به جای چک کردن فاصله، و خروج با رسیدن به آن، شاید بد نباشد، کل کاراکترهای زیر فاصله را نیز به عنوان پایان در نظر بگیرید.
    یعنی کد if اولی چنین شود:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

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


Thread Information

Users Browsing this Thread

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

User Tag List

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

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