نمایش نتایج 1 تا 5 از 5

نام تاپیک: پیغام خطای overflow

  1. #1
    کاربر تازه وارد
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    Iran
    پست
    44

    پیغام خطای overflow

    سلام
    با استفاده از یک dllکه درون دایرکتوریsystemریخته ام و توابع آنرا درون vbتعریف کرده ام وبه کمک یک تابع به نامdelayusیک تاخیر در حد (میکرو ثانیه)در برنامه ام ایجاد می کنم به کمک خط زیر
    (( delayus (t-k(i
    که tیک متغیر از نوع double بوده ومقدار آن همیشه ثابت وبرابر باt=16181میباشد و( k(i نیز یک آرایه از نوع variant بوده (به خاطر ماهیت برنامه باید از نوع variantباشد)و 46 عنصر دارد که همگی بصورت صعودی مرتب شده اندو بیشترین مقدار این آرایه 8000 میباشد این برنامه درون یک حلقه کار میکند وهر بار که حلقه تکرار میشود با توجه به مقدار ( k(i تاخیری متناسب طبق
    د ستور بالا ایجاد میگردد اما در بعضی از اوقات روی خط بالا بعد از چندین بار اجرا خطایovrerflow
    پیش می آید و وقتی دو متغیر بالا را چک می کنم مقادیر tو (k(i درست بوده وحاصل عبارت مثبت بوده و هیچگونه سر ریزی اتفاق نیا فتاده است . نمی دانم ایراد از کجاست لطفا راهنمایی بفرمایید
    با تشکر

  2. #2
    با سلام
    برای تاخیر در اجرای برنامه از توابع لازم برای اینکار استفاده کنید.
    http://www.barnamenevis.org/viewtopic.php?t=5907
    من نمی‌دونم که این تابع شما چطوری کار می‌کنه اما اگر با سر و کله زدن با یک آرایه این تاخیر را ایجاد می‌کنه باید بگم که راه خوبی انتخاب نکرده اید چرا که این میزان تاخیر بستگی به سرعت کامپیوتر پیدا می‌کنه و روش استانداردی نیست.

  3. #3
    زمانی که متغیری رو از نوع Variant تعریف میکنید بنا به مقدار اولیه که به اون میدید VB نوع اولیه متغیر رو تعیین میکنه. احتمالآ مقدار اولیه که شما به آرایه Variant میدید و مقدارهای بعدی تفاوت زیادی دارن. به نظر من آرایه خودتون رو با مقادیر زیاد در ابتدا تعریف کنید


    for i = 0 to 25
    k(i) = 1000000
    Next

  4. #4
    کاربر تازه وارد
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    Iran
    پست
    44
    با سلام
    آرایه ای که من تعریف کرده ام بصورت زیر است
    k = Array(100, 170, 260, 360, 480, 580, 670, 780, 890, 1000, 1100, 1180, 1280, 1380, 1480, 1580, 1700, 1850, 1950, 2100, 2200, 2320, 2450, 2550, 2700, 2850, 3100, 3400, 3600, 3800, 4000, 4150, 4300, 4500, 4750, 4950, 5150, 5350, 5620, 5900, 6100, 6350, 6650, 6900, 7150, 7500) که 46 عنصر داردوهر بار که i افزایش مییابد عنصر بعدی آرایه درون( k(i
    قرار می گیردووقتی به انتهای آرایه میرسد (i) را یک کرده و دوباره آرایه را طبق مقادیر بالا مقدار دهی میکند بنا بر این بین مقا دیر اول و بعدی هیچ تفاوتی وجود ندارد؟ با تشکر

  5. #5
    کاربر تازه وارد
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    Iran
    پست
    44
    حضور آقای a.noor
    احترامابه عرض می رسانم که تابع sleep می تواند تا خیری در حد میلی ثانیه ایجاد کند و لی من تاخیری در حد میکرو ثانیه لازم دارم
    و جسا رتا جهت یاد آوری عرض میکنم هر یک میکرو ثانیه برابر با یک هزارم میلی ثانیه می باشد . :?: :?:

تاپیک های مشابه

  1. پیغام overflow در استفاده از get کلاس
    نوشته شده توسط the Dead در بخش C#‎‎
    پاسخ: 6
    آخرین پست: یک شنبه 09 دی 1386, 08:32 صبح
  2. overflow در هنگام جمع زدن
    نوشته شده توسط hossein.e در بخش برنامه نویسی در 6 VB
    پاسخ: 3
    آخرین پست: چهارشنبه 02 آبان 1386, 18:50 عصر
  3. OverFlow در دلفی
    نوشته شده توسط ICEMAN در بخش امنیت در نرم افزار و برنامه نویسی
    پاسخ: 6
    آخرین پست: چهارشنبه 09 فروردین 1385, 15:03 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •