PDA

View Full Version : تفاوتLongInteger با Single ؟



a_r_shariati
جمعه 04 فروردین 1385, 21:18 عصر
با سلام
در help آمده است که حجم عدد با فرمت long برابر با 4بایت و حجم Singleهم 4بایت در نظر گرفته میشود.پس تفاوت این دو در چیست؟
چرا همیشه از فرمت single استفاده نکنیم؟

moustafa
جمعه 04 فروردین 1385, 22:34 عصر
محدوده سینگل بیشتر از لانگ هست ودادهای را با دقت یک رقم اعشار نگه می دارد -4/3*10بتوان 38 تا 3.4 ضربدر ده بتوان 38
لانگ بین منفی دو میلیارد ودو میلیارد بدون کسر یا اعشار

a_r_shariati
یک شنبه 06 فروردین 1385, 17:13 عصر
ممنونم آقا مصطفی
ولی باز هم نمیدانم که چرا از همان ابتدا single را استفاده نکنیم.و چرا defaultاعداد long integrt است.
البته من خودم در کار با single مشکلاتی را دیده ام مثلا در کپی پیست(که عدد بصورت دقیق کپی نمیشود) یا در mod (که در اعداد طولانی ایراد میگیرد).
ولی میخواهم بدانم اگر دوستان با تجربه در کار با این دو نوع عدد تفاوت اجرایی ندیده اند من هم از همان ابتدا single استفاده کنم.

moustafa
یک شنبه 06 فروردین 1385, 19:55 عصر
هر چقدر سایز فیلد کوچکتر باشد سرعت اجرای کوئری ها بالا می رود
ولی اگر شمابا یک append query بخواهی جمع یکسری رکوردهای لانگ را که از لانگ بیشتر به یک فیلد لانگ دیگر وارد کنی با پیغام عدم موفقیت الحاق روبرو میشی یا در اپدیت کوئری اعداد بزرگتر از لانگ
دقت دابل بیشتر از سینگل اون راامتحان کن ببین با مشکلی مواجه نمیشی

a_r_shariati
دوشنبه 07 فروردین 1385, 05:32 صبح
ممنونم
اتفاقا به همین مشکل برخوردم.در فانکشن پایین در حالییکه به متغییر wuidمقدار 10010000000 را داده ام مقدار R را 100064 برمیگرداند. ظاهرا دقت محاسبه بهم خورده.بنظر شما این مشکل را چه کنم
Public Function SubUnit2(WUId As Single) As Single
Dim M As Single, T As Single, r As Single

T = Int(WUId / 10)

r = T Mod 100000000