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

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




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

نام تاپيک: تعیین صحت نوع داده !!

  1. #1
    پروفشنال Tom Clancy's's Avatar
    تاريخ عضويت
    Jun 2007
    پست ها
    663

    پيش فرض تعیین صحت نوع داده !!

    سلام دوستان
    میخواستم بدونم بهترین راه برای چک کردن نوع داده تو c++ چی هست؟!!
    مثلا برای متغییری که از نوع رشته تعریف کردیم، اگر کاربر مقداری که وارد میکنه از نوع رشته نباشه یه پیغام نمایش بده !!

  2. #2
    کـاربـر بـاسـابـقـه szh_1367's Avatar
    تاريخ عضويت
    Apr 2007
    پست ها
    1,007

    پيش فرض

    سلام دوستان
    میخواستم بدونم بهترین راه برای چک کردن نوع داده تو c++ چی هست؟!!
    مثلا برای متغییری که از نوع رشته تعریف کردیم، اگر کاربر مقداری که وارد میکنه از نوع رشته نباشه یه پیغام نمایش بده !!
    سلام

    برای مشخص کردن نوع داده که میتوانید از دستور typeid استفاده کنید

    نمیشه گفت بهترین راه همیشه از یک طریق بدست می اید بهترین راه رو شما باید با توجه نوع مسئله و تکنیک های مورد استفاده در برنامه خود بدست اورید

    برای بدست اوردن اطلاعات بیشتر در مورد typeid به [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] و [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] مراجعه کنید

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


  4. #3
    پروفشنال Tom Clancy's's Avatar
    تاريخ عضويت
    Jun 2007
    پست ها
    663

    پيش فرض

    سلام

    برای مشخص کردن نوع داده که میتوانید از دستور typeid استفاده کنید

    نمیشه گفت بهترین راه همیشه از یک طریق بدست می اید بهترین راه رو شما باید با توجه نوع مسئله و تکنیک های مورد استفاده در برنامه خود بدست اورید

    برای بدست اوردن اطلاعات بیشتر در مورد typeid به [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] و [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] مراجعه کنید
    دوست عزیز typeip نوع متغییری که تعریف شده رو مشخص میکنه !
    من میخوام ماهیت چیزی که کاربر وارد میکنه رو بررسی کنم که اگر مثلا به جای عدد کاراکتر وارد کرده بود یه پیغام نمایش بده!

  5. #4
    کـاربـر بـاسـابـقـه szh_1367's Avatar
    تاريخ عضويت
    Apr 2007
    پست ها
    1,007

    پيش فرض

    دوست عزیز typeip نوع متغییری که تعریف شده رو مشخص میکنه !
    من میخوام ماهیت چیزی که کاربر وارد میکنه رو بررسی کنم که اگر مثلا به جای عدد کاراکتر وارد کرده بود یه پیغام نمایش بده!
    بله درسته typeip نوع رو مشخص میکنه

    ابتدا اینکه تمام داده هایی که وارد سیستم میشوند به صورت رشته هستند این شمااید که باید داده رو به نوع مورد نظر تبدیل کنید یا زبان برنامه نویسی این قابلیت رو داشته باشد که داده رو تشخیص دهد

    کاری که شما میخواهید انجام دهید اعتبار سنجی نام دارد

    برای اعتبار سنجی باید داده رو دریافت و کاراکتر به کاراکتر اون رو چک کرد این عملیات باید قبل از وارد شدن داده به قسمت عملیاتی یا محاسباتی باشد

    به عنوان مثال [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] رو مشاهده کنید که از تابع isdigit جهت تشخیص اینکه کاراکتر مورد نظر عدد است یا خیر

    شما برای کار خود باید تابعی درست کنید که کار اعتبار سنجی رو انجام دهد

    اگر قسمتی از توضیحات گنگ است بفرمائید توضیح خواهم داد

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


  7. #5
    پروفشنال Tom Clancy's's Avatar
    تاريخ عضويت
    Jun 2007
    پست ها
    663

    پيش فرض

    بله درسته typeip نوع رو مشخص میکنه

    ابتدا اینکه تمام داده هایی که وارد سیستم میشوند به صورت رشته هستند این شمااید که باید داده رو به نوع مورد نظر تبدیل کنید یا زبان برنامه نویسی این قابلیت رو داشته باشد که داده رو تشخیص دهد

    کاری که شما میخواهید انجام دهید اعتبار سنجی نام دارد

    برای اعتبار سنجی باید داده رو دریافت و کاراکتر به کاراکتر اون رو چک کرد این عملیات باید قبل از وارد شدن داده به قسمت عملیاتی یا محاسباتی باشد

    به عنوان مثال [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] رو مشاهده کنید که از تابع isdigit جهت تشخیص اینکه کاراکتر مورد نظر عدد است یا خیر

    شما برای کار خود باید تابعی درست کنید که کار اعتبار سنجی رو انجام دهد

    اگر قسمتی از توضیحات گنگ است بفرمائید توضیح خواهم داد
    این کار رو انجام دادم قبلا منتها یه مشکلی که دارم اینه
    مثلا تابع isdigit که برای تشخیص اعداد 0 تا 9 هست ، وقتی که یه متغییری از نوع int تعریف میکنم و از کاربر مقدار رو میگیرم با اینکه عدد وارد میکنم ولی باز هم تابع مقدار 0 رو بر میگردونه!!
    حالا اگر همون متغییر رو از نوع char تعریف کنم و مقدار رو بگیرم تابع به درستی عمل میکنه!
    میخواستم بدونم نمیشه کاری کرد که نوع متغییر عددی باشه اما این تابع مقدار درست رو برگردونه؟!

  8. #6
    کـاربـر بـاسـابـقـه szh_1367's Avatar
    تاريخ عضويت
    Apr 2007
    پست ها
    1,007

    پيش فرض

    این کار رو انجام دادم قبلا منتها یه مشکلی که دارم اینه
    مثلا تابع isdigit که برای تشخیص اعداد 0 تا 9 هست ، وقتی که یه متغییری از نوع int تعریف میکنم و از کاربر مقدار رو میگیرم با اینکه عدد وارد میکنم ولی باز هم تابع مقدار 0 رو بر میگردونه!!
    حالا اگر همون متغییر رو از نوع char تعریف کنم و مقدار رو بگیرم تابع به درستی عمل میکنه!
    میخواستم بدونم نمیشه کاری کرد که نوع متغییر عددی باشه اما این تابع مقدار درست رو برگردونه؟!
    الان کامپایلر ندارم امتحان کنم اما همانطور که عرض کردم مقادیر دریافتی همه رشته هستند شما باید مقادیر رو قبل از ارسال به تابع تبدیل کنید

    مثلا کاربر عدد 123 وارد میکند اما در واقع کامپیوتر ان را رشته 123 در نظر میگیرد

  9. #7
    پروفشنال Tom Clancy's's Avatar
    تاريخ عضويت
    Jun 2007
    پست ها
    663

    پيش فرض

    الان کامپایلر ندارم امتحان کنم اما همانطور که عرض کردم مقادیر دریافتی همه رشته هستند شما باید مقادیر رو قبل از ارسال به تابع تبدیل کنید

    مثلا کاربر عدد 123 وارد میکند اما در واقع کامپیوتر ان را رشته 123 در نظر میگیرد
    شما منظورتون اینه که وقتی یه متغیر نوعش int هست من دوباره باید تبدیلش کنم بعد ارسال کنم به تابع؟!
    اگر اینطوره به چی باید تبدیل بشه؟ کاراکتر؟!

  10. #8
    کـاربـر بـاسـابـقـه szh_1367's Avatar
    تاريخ عضويت
    Apr 2007
    پست ها
    1,007

    پيش فرض

    شما منظورتون اینه که وقتی یه متغیر نوعش int هست من دوباره باید تبدیلش کنم بعد ارسال کنم به تابع؟!
    اگر اینطوره به چی باید تبدیل بشه؟ کاراکتر؟!
    بله به کاراکتر تبدیل کنید چون نوع ورودی تابع isdigit کاراکتر است

    مگر اینکه شما خودتان تابعی تعریف کنید که کار اعتبارسنجی رو با ورودی int انجام دهد

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

Thread Information

Users Browsing this Thread

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

User Tag List

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

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