عند اجراء العمليه تظهر رساله
'4029047722'is not a valid integer value
الكود
edit2.Text:= inttostr ( strtoint(edit1.Text)* 25)+157889899 );;
4029047722
هو قيمه
edit1.Text
ما الخطاء
او هل integer
له قيمه كبرى
عند اجراء العمليه تظهر رساله
'4029047722'is not a valid integer value
الكود
edit2.Text:= inttostr ( strtoint(edit1.Text)* 25)+157889899 );;
4029047722
هو قيمه
edit1.Text
ما الخطاء
او هل integer
له قيمه كبرى
السلام عليكم
اخى طبعا اى معرف فى الدلفى له حجم لا يزيد عليه الا المؤشرات وهذا موضوع اخر وانا لست متاكد من المدى للقيمة integer لكن سأعطيها لك بأذن الله
اخى خلينا نكسب من وراك اجر ودعوة طيبة فى وصلة فى توقيعى القى عليها نظرة
----------------------------------------------------------------------

مامعنى
StrToInt64
هذه حدود integer
Integer -2147483648..2147483647 signed 32-bit
و
StrToInt64
تعني تحويل سلسلة الى عدد صحيح من نمط int64
هل استعمال
strtoint
هو نفس استعمال
StrToInt64
Int64 -2^63..2^63-1 signed 64-bit Integer -2147483648..2147483647 signed 32-bit
هذا الكلام مشروح جيدا في ال Help لذلك يرجى قراءة ال Help لمعلومات اوسع
في الكود اعلاه
ترى انّ حجم النمط Integer هو اربعة بايت اي 32 بت و بالتالي لا يمكن ان تخزن فيه قيمة اكبر من المجال المذكور اعلاه
و معنى كلمة signed هي انّ يمكن ان يكون موجب او سالب
اما النمط int64 هو 8 بايت اي 64 بت و بالتالي يمكنه تخزين قيمة بين 4294967295 و -4294967295 اي مجاله اوسع
متى نستخدم هذا النمط و متى نستخدم ذاك:
هذا السؤال يجب ان تجيب عليه انت و ذلك حسب ما تريد
اذا كان لديك متحول لا يأخذ الى القيمة 0 و -1 و1 و2 فلا داعي لاستخدام Integer وحجز اربعة بايت و بدلا من ذلك استخدم Shortint
و الذي هو عبارة عن بايت واحد
و بالتالي حسب الحاجة نقوم بتحديد نمط المتحول
الان اصبح حجم الذواكر كبير و ما عد فرقت مع المبرمجين و كل ما يشوفوا متحول ارقام يالله Integer و خود على كم متحول Integer
في البرنامج مما يستهلك ذاكرة اكثر
طبعا يجب الانتباه الى مدى كل متحول و اختيار النمط المناسب
شكرا
رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.
لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"
هذا الموضوع مغلق.