PDA

View Full Version : شرحی بر توابع در VB6 - آموزشی



Doctor Sinohe
دوشنبه 17 شهریور 1382, 18:36 عصر
با سلام

مقاله زیر در واقع شرح کوتاهی بر توابع کتابخانه ای در VB6 می باشد
در تعریف توابع کتابخانه ای چنین آمده :
توابع کتابخانه ای برنامه‌های هستند که قبلا نوشته شده و همراه کامپایلر یا مفسر زبان وجود دارند. این توابع در فایل ویژه ای به نام کتابخانه قرار داشته و در همه برنامه‌ها قابل فراخوانی و اجرا هستند.
توابع کتابخانه در جهت انجام اعمال ریاضی. دستکاری در رشته‌ها. تبدیل انواع و انجام تستهای خاص مورد استفاده قرار می گیرند

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

امیدوارم این مقال مورد استفاده شما واقع شود
هرگونه نظرات. پیشنهادات . انتقادات یا توابع‌ای که ممکن است در اینجا ذکری از آنها به میان نیامده باشد را در همین تاپیک بیان کنید

پیشاپیش از شما سپاس گزارم

Doctor Sinohe
دوشنبه 17 شهریور 1382, 18:50 عصر
دقت کنید که متغیر های گروه S نشانه یک رشته (String) به عنوان آرگومان و متغیر های گروه N نشانه یک عبارت عددی به عنوان آرگومان می‌باشند‌

توابع رشته ای


Strcomp (S1, S2, t)
مقایسه رشته S1 و S2 – t نوع مقایسه . مقدار بازگشتی 0( باهم برابر ) 1 (اول از دوم بزرگتر ) 1- (دوم از اول بزرگتر)

Mid$ (S1, N1, N2)
برای جدا سازی بخشی از یک رشته بکار میرود. S1 عبارت مورد نظر/ N1 محل شروع برای جداسازی (از چپ) / N2 تعداد کاراکتر انتخاب شونده

Mid$ (S1, N1, N2) = S2
برای جایگزین کردن S2 در بخشی از S1 . آرگومانها با تابع بالا یکسان است

Left$ (S1, n)
جدا کردن زیر رشته از عبارت S1 به طول n از چپ

Right$(S1, n)
جدا کردن زیر رشته از عبارت S1 به طول n از راست

Ltrim$(S1)
حذف فاصله های خالیS1 از چپ

Rtrim$(S1)
حذف فاصله های خالیS1 از راست

Trim$(S1)
حذف فاصله های خالیS1 از دو طرف

Lcase$ (S1)
S1 را به حروف کوچک مبدل می‌کند

Ucase$ (S2)
S1 را به حروف بزرگ مبدل می‌کند

Space (n)
یک رشته به طول n با فضای خالی تعریف می‌کند

String(m, n or s )
کاراکتر مربوط به کد اسکی n یا اولین حرف عبارت s را m بار تکرار میکند

Instr (N1, S1, S2)
برای جستجو در یک زیر رشته به کار میرود
N1 محل شروع جستجو /S1 رشته ای که باید S2 در آن جستجو شود. مقدار بازگشتی محل کاراکتر در رشته است ( از چپ)

Len (s)
طول عبارت را بر می‌گرداند

Replace (S1, S2, S3)
یک زیر رشته (S3) را در رشته(s1 (با زیر رشته(s2) دیگر جایگزین می‌کند

Strreverse (S1)
S1 را معکوس می‌کند

توابع مثلثاتی و محاسباتی


Sin (n), Cos (n), Tan (n), ATN (n)
به ترتیب سینوس / کسینوس / تانژانت و آرکتانژانت زاویه n را برحسب رادیان برمی‌گرداند

ABS (n)
قدر مطلق n را بر میگرداند

INT (n)
قسمت صحیح عدد با گرد کردن

Fix (n)
قسمت صحیح عدد بدون گرد کردن ( تفاوت fix و int در اعداد اعشاری منفی مشخص می‌شود)

Exp (n)
توان n از e را محاسبه می‌کند

Log (n)
لگاریتم طبیعی n را حساب میکند

Sqr (n)
جذر n را محاسبه می کند

Sgn (n)
n را تعیین علامت میکند (0 منفی و 1 مثبت)

Rnd
تولید عدد تصادفی

توابع تبدیل نوع


Asc(s)
کد اسکی اولین کاراکتر عبارت s را بر می گرداند

Chr$(n)
کاراکتر کد اسکی n را بر می گرداند

Cint(n) , Cstr(s or n) , cint(n) , Cbool(n) , . ……
مقدار دریافتی را به مقدار تعریفی بر می گردانند

Hex$(n)
N را به مبنای 8 می برد

Oct$(n)
N را به مبنای 16 می برد

Isnumeric(s)
اگر رشته قابل تبدیل به عدد باشد true برگشت می دهد در غیر این صورت False

Val (s)
رشته دریافتی را به عدد تبدیل می کند

Str$(n)
عدد دریافتی را به رشته مبدل می کند


توابع تستهای خاص


Free File
آخرین فایل باز شده را دریافت می کند

Err
این تابع کد خطای ایجاد شده را در خود نگاه می دارد

ERL
این تابع شماره خطی را که در آن خطا اتفاق افتاده نگه می دارد

Eof (t)
برای تست کردن به انتها رسیدن فایل بکار میرود
t شماره فایل می باشد

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

Lbound
کمترین مقدار ابعاد یک آرایه را معین می کند

Ubound
بیشترین مقدار ابعاد یک ارایه را معین می کند

Loc ( n)
شماره رکورد جاری را معین میکند
n شماره فایل است

Lof (n)
طول فایل را برحسب بایت مشخص می کند
n شماره فایل است

Timer
تعداد ثانیه های گذشته بعد از نیمه شب را در زمان اجرا مشخص می کند

روح اله معینی زاده
سه شنبه 18 شهریور 1382, 06:42 صبح
:o با سلام

دکتر جان مطمئنید که تابع ATN کتانژانت است و آرک تانژانت نیست؟ :oops: :?:

با احترام - خدانگهدار

Doctor Sinohe
سه شنبه 18 شهریور 1382, 07:34 صبح
دکتر جان مطمئنید که تابع ATN کتانژانت است و آرک تانژانت نیست؟
با سلام
با تذکر شما من دوباره بررسی کردم و دیدم که متاسفانه :( در هنگام تایپ به جای کلمه آرکتانژانت به اشتباه تایپ کردم :oops: :oops: کتانژانت که هم در بالا تصحیح شد و هم در اینجا تصحیح می شود

با تشکر از تذکر به موقع و مفید شما
:)

sayana
چهارشنبه 19 شهریور 1382, 23:20 عصر
آقای دکتر دستتون درد نکنه ، کار خیلی جالبی بود .

Doctor Sinohe
پنج شنبه 20 شهریور 1382, 06:09 صبح
آقای دکتر دستتون درد نکنه ، کار خیلی جالبی بود .

مرسی :oops:

S.Azish
جمعه 21 شهریور 1382, 12:32 عصر
امیدوارم یک یا چند نفر از دوستان داوطلب بشن و نمونه اینکار رو برای Net. شروع کنن.

M-Gheibi
جمعه 21 شهریور 1382, 17:12 عصر
دکتر سینوحه عزیز خیلی عالی بود. :wink: :wink: :lol: :lol:

Doctor Sinohe
شنبه 22 شهریور 1382, 06:34 صبح
ممنون مرسی :oops: :oops: :oops:

cpuman
پنج شنبه 27 شهریور 1382, 11:07 صبح
ممنون آقای دکتر من از لیست شما استفاده کردم

amin_programmer
چهارشنبه 09 مهر 1382, 19:44 عصر
آقای سینوحه دستتون درد نکه بدرد من تازه کار خیلی خورد
مرسی