English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
limits.h يحدد ملف العناوين خصائص أنواع المتغيرات المختلفة.
هذه القيود تحدد أن لا يمكن لتخزين أي قيمة تتجاوز هذه القيود، مثل أكبر قيمة يمكن تخزينها لأعداد غير المعدومة هي 255.
القيم التالية هي محددة للتنفيذ الخاص، ويتم تعريفها باستخدام أوامر #define، ولا يجب أن تكون أقل من القيم المحددة أدناه.
المكتبة | القيمة | الوصف |
---|---|---|
CHAR_BIT | 8 | تعريف عدد البتات في البايت. |
SCHAR_MIN | -128 | تعريف أصغر قيمة لشخص معزز. |
SCHAR_MAX | 127 | تعريف أكبر قيمة لشخص معزز. |
UCHAR_MAX | 255 | تعريف أكبر قيمة لشخص غير معزز. |
CHAR_MIN | 0 | تعريف أصغر قيمة لنوع char، إذا كان char يمثل قيمة سالبة، فإن قيمته تساوي SCHAR_MIN، وإلا تساوي 0. |
CHAR_MAX | 127 | تعريف أكبر قيمة لنوع char، إذا كان char يمثل قيمة سالبة، فإن قيمته تساوي SCHAR_MAX، وإلا تساوي UCHAR_MAX. |
MB_LEN_MAX | 1 | تعريف أكبر عدد من البتات في حرف متعدد. |
SHRT_MIN | -32768 | تعريف أصغر قيمة لعدد قصير. |
SHRT_MAX | +32767 | تعريف أكبر قيمة لعدد قصير. |
USHRT_MAX | 65535 | تحديد أكبر قيمة للنوع غير الموقوع القصير. |
INT_MIN | -32768 | تحديد أصغر قيمة للنوع. |
INT_MAX | +32767 | تحديد أكبر قيمة للنوع. |
UINT_MAX | 65535 | تحديد أكبر قيمة للنوع غير الموقوع. |
LONG_MIN | -2147483648 | تحديد أصغر قيمة للنوع الطويل. |
LONG_MAX | +2147483647 | تحديد أكبر قيمة للنوع الطويل. |
ULONG_MAX | 4294967295 | تحديد أكبر قيمة للنوع غير الموقوع الطويل. |
يظهر هذا المثال استخدام بعض المعادلات المحددة في ملف limit.h.
#include <stdio.h> #include <limits.h> int main() { printf("عدد البتات لـ byte = %d\n", CHAR_BIT); printf("أصغر قيمة SIGNED CHAR = %d\n", SCHAR_MIN); printf("أكبر قيمة SIGNED CHAR = %d\n", SCHAR_MAX); printf("أكبر قيمة UNSIGNED CHAR = %d\n", UCHAR_MAX); printf("أصغر قيمة SHORT INT = %d\n", SHRT_MIN); printf("أكبر قيمة SHORT INT = %d\n", SHRT_MAX); printf("أصغر قيمة INT = %d\n", INT_MIN); printf("أكبر قيمة INT = %d\n", INT_MAX); printf("أصغر قيمة CHAR = %d\n", CHAR_MIN); printf("أكبر قيمة CHAR = %d\n", CHAR_MAX); printf("أكبر قيمة LONG = %ld\n", LONG_MIN); printf("أصغر قيمة LONG = %ld\n", LONG_MAX); return(0); }
لنقوم بترميز وتشغيل البرنامج أعلاه، مما ينتج النتيجة التالية:
عدد البتات لـ byte = 8 أصغر قيمة SIGNED CHAR = -128 أكبر قيمة SIGNED CHAR = 127 أكبر قيمة UNSIGNED CHAR = 255 أصغر قيمة SHORT INT = -32768 أكبر قيمة SHORT INT = 32767 أقل قيمة INT = -32768 أكبر قيمة INT = 32767 أقل قيمة CHAR = -128 أكبر قيمة CHAR = 127 أكبر قيمة LONG = -2147483648 أقل قيمة LONG = 2147483647