سؤال

أنا أتعامل مع مثال الرياضيات. أحتاج إلى استخدام رقم 12 رقمًا للرمز الخاص بي. إذن ما نوع البيانات الذي يجب أن أستخدمه ، لاستخدام الرقم في وظيفاتي؟

هل كانت مفيدة؟

المحلول

أعداد صحيحة 64 بت (long, int64_t, unsigned long, uint64_t) يجب القيام بالخدعة ، أو إذا كنت بحاجة إلى العشرية ، double أو long double.

نصائح أخرى

إذا كان لديك نوع عدد صحيح 64 بت ، فسأذهب مع ذلك ، لأنه يمنحك نطاق (18 رقمًا كاملًا):

−9,223,372,036,854,775,808 to
+9,223,372,036,854,775,807

بالنسبة للمهام الأخرى (حتى الأعداد الصحيحة الأكبر أو قيم النقاط العائمة الضخمة) ، أستخدم GMP, ، مكتبة GNU متعددة الدقة. إنه الأداء مثير للإعجاب.

يمكنك أيضًا استخدام "غير موقعة طويلة طويلة" مع تحديد التنسيق "LLU". إنه يعمل بشكل جيد لرقم 12 رقمًا في C.

unsigned long long i=600851475143;
printf("%llu",i);

أثناء البحث عن مكتبة تسمى Bignum لقد وجدت هذا صفحة ويكي

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top