المتغيرات
فضاءات التسمية
أفعال

أنواع عددية صحيحة ثابتة الحجم (منذ C99)

من cppreference.com
< c‏ | types

محتويات

[تعديل]الأنواع

معرفة في ملف <stdint.h>
‎int8_t‎
‎int16_t‎
‎int32_t‎
‎int64_t‎
نوع عدد صحيح ذو إشارة حجمه
بالضبط 8 و 16 و 32 و 64 بت على التوالي
يستعمل كل البت خاصته في التخزين ومتمم ثنائيا
(متاح فقط إذا كانت البيئية تدعم هذا النوع مباشرة)
‎int_fast8_t‎
‎int_fast16_t‎
‎int_fast32_t‎
‎int_fast64_t‎
أسرع نوع عدد صحيح ذو إشارة حجمه
على الأقل 8 و 16 و 32 و 64 بت على التوالي
‎int_least8_t‎
‎int_least16_t‎
‎int_least32_t‎
‎int_least64_t‎
أصغر نوع عدد صحيح ذو إشارة حجمه
على الأقل 8 و 16 و 32 و 64 بت على التوالي
‎intmax_t‎ أكبر نوع عدد صحيح
‎intptr_t‎ نوع عدد صحيح ذو إشارة قادر على حمل مؤشر
‎uint8_t‎
‎uint16_t‎
‎uint32_t‎
‎uint64_t‎
نوع عدد صحيح دون إشارة حجمه
بالضبط 8 و 16 و 32 و 64 بت على التوالي
(متاح فقط إذا كانت البيئية تدعم هذا النوع مباشرة)
‎uint_fast8_t‎
‎uint_fast16_t‎
‎uint_fast32_t‎
‎uint_fast64_t‎
أسرع نوع عدد صحيح دون إشارة حجمه
على الأقل 8 و 16 و 32 و 64 بت على التوالي
‎uint_least8_t‎
‎uint_least16_t‎
‎uint_least32_t‎
‎uint_least64_t‎
أصغر نوع عدد صحيح دون إشارة حجمه
على الأقل 8 و 16 و 32 و 64 بت على التوالي
‎uintmax_t‎ أكبر نوع عدد صحيح دون إشارة
‎uintptr_t‎ نوع عدد صحيح دون إشارة قادر على حمل مؤشر

[تعديل]ثوابت ماكرو

معرفة في ملف <stdint.h>
عدد صحيح ذو إشارة: أدني قيمة
INT8_MIN
INT16_MIN
INT32_MIN
INT64_MIN
أصغر قيمة لكائن من النوع int8_t‎ و int16_t‎ و int32_t‎ و int64_t‎
(ثابت ماكرو)
INT_FAST8_MIN
INT_FAST16_MIN
INT_FAST32_MIN
INT_FAST64_MIN
أصغر قيمة لكائن من النوع int_fast8_t‎ و int_fast16_t‎ و int_fast32_t‎ و int_fast64_t‎
(ثابت ماكرو)
INT_LEAST8_MIN
INT_LEAST16_MIN
INT_LEAST32_MIN
INT_LEAST64_MIN
أصغر قيمة لكائن من النوع int_least8_t‎ و int_least16_t‎ و int_least32_t‎ و int_least64_t‎
(ثابت ماكرو)
INTPTR_MIN
أصغر قيمة لكائن من النوع intptr_t‎
(ثابت ماكرو)
INTMAX_MIN
أصغر قيمة لكائن من النوع intmax_t‎
(ثابت ماكرو)
عدد صحيح ذو إشارة: أقصى قيمة
INT8_MAX
INT16_MAX
INT32_MAX
INT64_MAX
أكبر قيمة لكائن من النوع int8_t‎ و int16_t‎ و int32_t‎ و int64_t‎
(ثابت ماكرو)
INT_FAST8_MAX
INT_FAST16_MAX
INT_FAST32_MAX
INT_FAST64_MAX
أكبر قيمة لكائن من النوع int_fast8_t‎ و int_fast16_t‎ و int_fast32_t‎ و int_fast64_t‎
(ثابت ماكرو)
INT_LEAST8_MAX
INT_LEAST16_MAX
INT_LEAST32_MAX
INT_LEAST64_MAX
أكبر قيمة لكائن من النوع int_least8_t‎ و int_least16_t‎ و int_least32_t‎ و int_least64_t‎
(ثابت ماكرو)
INTPTR_MAX
أكبر قيمة لكائن من النوع intptr_t‎
(ثابت ماكرو)
INTMAX_MAX
أكبر قيمة لكائن من النوع intmax_t‎
(ثابت ماكرو)
عدد صحيح دون إشارة: أقصى قيمة
UINT8_MAX
UINT16_MAX
UINT32_MAX
UINT64_MAX
أكبر قيمة لكائن من النوع uint8_t‎ و uint16_t‎ و uint32_t‎ و uint64_t‎
(ثابت ماكرو)
UINT_FAST8_MAX
UINT_FAST16_MAX
UINT_FAST32_MAX
UINT_FAST64_MAX
أكبر قيمة لكائن من النوع uint_fast8_t‎ و uint_fast16_t‎ و uint_fast32_t‎ و uint_fast64_t‎
(ثابت ماكرو)
UINT_LEAST8_MAX
UINT_LEAST16_MAX
UINT_LEAST32_MAX
UINT_LEAST64_MAX
أكبر قيمة لكائن من النوع uint_least8_t‎ و uint_least16_t‎ و uint_least32_t‎ و uint_least64_t‎
(ثابت ماكرو)
UINTPTR_MAX
أكبر قيمة لكائن من النوع uintptr_t‎
(ثابت ماكرو)
UINTMAX_MAX
أكبر قيمة لكائن من النوع uintmax_t‎
(ثابت ماكرو)

[تعديل]ثوابت ماكرو للتنسيق

معرفة في ملف <inttypes.h>
ثوابت لنتنسق الأعداد في دالة fprintf‎ وأخواتها
PRId8
PRId16
PRId32
PRId64
PRIdLEAST8
PRIdLEAST16
PRIdLEAST32
PRIdLEAST64
PRIdFAST8
PRIdFAST16
PRIdFAST32
PRIdFAST64
PRIdMAX
PRIdPTR
format conversion specifier to output a signed decimal integer value of type int8_t‎, int16_t‎, int32_t‎, int64_t‎, int_least8_t‎, int_least16_t‎, int_least32_t‎, int_least64_t‎, int_fast8_t‎, int_fast16_t‎, int_fast32_t‎, int_fast64_t‎, intmax_t‎, intptr_t‎ respectively, equivalent to ‎%d‎ for int
(ثابت ماكرو)
PRIi8
PRIi16
PRIi32
PRIi64
PRIiLEAST8
PRIiLEAST16
PRIiLEAST32
PRIiLEAST64
PRIiFAST8
PRIiFAST16
PRIiFAST32
PRIiFAST64
PRIiMAX
PRIiPTR
format conversion specifier to output a signed decimal integer value of type int8_t‎, int16_t‎, int32_t‎, int64_t‎, int_least8_t‎, int_least16_t‎, int_least32_t‎, int_least64_t‎, int_fast8_t‎, int_fast16_t‎, int_fast32_t‎, int_fast64_t‎, intmax_t‎, intptr_t‎ respectively, equivalent to ‎%i‎ for int
(ثابت ماكرو)
PRIu8
PRIu16
PRIu32
PRIu64
PRIuLEAST8
PRIuLEAST16
PRIuLEAST32
PRIuLEAST64
PRIuFAST8
PRIuFAST16
PRIuFAST32
PRIuFAST64
PRIuMAX
PRIuPTR
format conversion specifier to output an unsigned decimal integer value of type uint8_t‎, uint16_t‎, uint32_t‎, uint64_t‎, uint_least8_t‎, uint_least16_t‎, uint_least32_t‎, uint_least64_t‎, uint_fast8_t‎, uint_fast16_t‎, uint_fast32_t‎, uint_fast64_t‎, uintmax_t‎, uintptr_t‎ respectively, equivalent to ‎%u‎ for unsignedint
(ثابت ماكرو)
PRIo8
PRIo16
PRIo32
PRIo64
PRIoLEAST8
PRIoLEAST16
PRIoLEAST32
PRIoLEAST64
PRIoFAST8
PRIoFAST16
PRIoFAST32
PRIoFAST64
PRIoMAX
PRIoPTR
format conversion specifier to output an unsigned octal integer value of type uint8_t‎, uint16_t‎, uint32_t‎, uint64_t‎, uint_least8_t‎, uint_least16_t‎, uint_least32_t‎, uint_least64_t‎, uint_fast8_t‎, uint_fast16_t‎, uint_fast32_t‎, uint_fast64_t‎, uintmax_t‎, uintptr_t‎ respectively, equivalent to ‎%o‎ for unsignedint
(ثابت ماكرو)
PRIx8
PRIx16
PRIx32
PRIx64
PRIxLEAST8
PRIxLEAST16
PRIxLEAST32
PRIxLEAST64
PRIxFAST8
PRIxFAST16
PRIxFAST32
PRIxFAST64
PRIxMAX
PRIxPTR
format conversion specifier to output an unsigned hexadecimal integer value of type uint8_t‎, uint16_t‎, uint32_t‎, uint64_t‎, uint_least8_t‎, uint_least16_t‎, uint_least32_t‎, uint_least64_t‎, uint_fast8_t‎, uint_fast16_t‎, uint_fast32_t‎, uint_fast64_t‎, uintmax_t‎, uintptr_t‎ respectively, equivalent to ‎%x‎ for unsignedint
(ثابت ماكرو)
PRIX8
PRIX16
PRIX32
PRIX64
PRIXLEAST8
PRIXLEAST16
PRIXLEAST32
PRIXLEAST64
PRIXFAST8
PRIXFAST16
PRIXFAST32
PRIXFAST64
PRIXMAX
PRIXPTR
format conversion specifier to output an unsigned uppercase hexadecimal integer value of type uint8_t‎, uint16_t‎, uint32_t‎, uint64_t‎, uint_least8_t‎, uint_least16_t‎, uint_least32_t‎, uint_least64_t‎, uint_fast8_t‎, uint_fast16_t‎, uint_fast32_t‎, uint_fast64_t‎, uintmax_t‎, uintptr_t‎ respectively, equivalent to ‎%X‎ for unsignedint
(ثابت ماكرو)
Format constants for the fscanf‎ family of functions
SCNd8
SCNd16
SCNd32
SCNd64
SCNdLEAST8
SCNdLEAST16
SCNdLEAST32
SCNdLEAST64
SCNdFAST8
SCNdFAST16
SCNdFAST32
SCNdFAST64
SCNdMAX
SCNdPTR
format conversion specifier to input a signed decimal integer value of type int8_t‎, int16_t‎, int32_t‎, int64_t‎, int_least8_t‎, int_least16_t‎, int_least32_t‎, int_least64_t‎, int_fast8_t‎, int_fast16_t‎, int_fast32_t‎, int_fast64_t‎, intmax_t‎, intptr_t‎ respectively, equivalent to ‎%d‎ for int
(ثابت ماكرو)
SCNi8
SCNi16
SCNi32
SCNi64
SCNiLEAST8
SCNiLEAST16
SCNiLEAST32
SCNiLEAST64
SCNiFAST8
SCNiFAST16
SCNiFAST32
SCNiFAST64
SCNiMAX
SCNiPTR
format conversion specifier to input a signed decimal/octal/hexadecimal integer value of type int8_t‎, int16_t‎, int32_t‎, int64_t‎, int_least8_t‎, int_least16_t‎, int_least32_t‎, int_least64_t‎, int_fast8_t‎, int_fast16_t‎, int_fast32_t‎, int_fast64_t‎, intmax_t‎, intptr_t‎ respectively, equivalent to ‎%i‎ for int
(ثابت ماكرو)
SCNu8
SCNu16
SCNu32
SCNu64
SCNuLEAST8
SCNuLEAST16
SCNuLEAST32
SCNuLEAST64
SCNuFAST8
SCNuFAST16
SCNuFAST32
SCNuFAST64
SCNuMAX
SCNuPTR
format conversion specifier to input an unsigned decimal integer value of type uint8_t‎, uint16_t‎, uint32_t‎, uint64_t‎, uint_least8_t‎, uint_least16_t‎, uint_least32_t‎, uint_least64_t‎, uint_fast8_t‎, uint_fast16_t‎, uint_fast32_t‎, uint_fast64_t‎, uintmax_t‎, uintptr_t‎ respectively, equivalent to ‎%u‎ for unsignedint
(ثابت ماكرو)
SCNo8
SCNo16
SCNo32
SCNo64
SCNoLEAST8
SCNoLEAST16
SCNoLEAST32
SCNoLEAST64
SCNoFAST8
SCNoFAST16
SCNoFAST32
SCNoFAST64
SCNoMAX
SCNoPTR
format conversion specifier to input an unsigned octal integer value of type uint8_t‎, uint16_t‎, uint32_t‎, uint64_t‎, uint_least8_t‎, uint_least16_t‎, uint_least32_t‎, uint_least64_t‎, uint_fast8_t‎, uint_fast16_t‎, uint_fast32_t‎, uint_fast64_t‎, uintmax_t‎, uintptr_t‎ respectively, equivalent to ‎%o‎ for unsignedint
(ثابت ماكرو)
SCNx8
SCNx16
SCNx32
SCNx64
SCNxLEAST8
SCNxLEAST16
SCNxLEAST32
SCNxLEAST64
SCNxFAST8
SCNxFAST16
SCNxFAST32
SCNxFAST64
SCNxMAX
SCNxPTR
format conversion specifier to input an unsigned hexadecimal integer value of type uint8_t‎, uint16_t‎, uint32_t‎, uint64_t‎, uint_least8_t‎, uint_least16_t‎, uint_least32_t‎, uint_least64_t‎, uint_fast8_t‎, uint_fast16_t‎, uint_fast32_t‎, uint_fast64_t‎, uintmax_t‎, uintptr_t‎ respectively, equivalent to ‎%x‎ for unsignedint
(ثابت ماكرو)
SCNX8
SCNX16
SCNX32
SCNX64
SCNXLEAST8
SCNXLEAST16
SCNXLEAST32
SCNXLEAST64
SCNXFAST8
SCNXFAST16
SCNXFAST32
SCNXFAST64
SCNXMAX
SCNXPTR
format conversion specifier to input an unsigned uppercase hexadecimal integer value of type uint8_t‎, uint16_t‎, uint32_t‎, uint64_t‎, uint_least8_t‎, uint_least16_t‎, uint_least32_t‎, uint_least64_t‎, uint_fast8_t‎, uint_fast16_t‎, uint_fast32_t‎, uint_fast64_t‎, uintmax_t‎, uintptr_t‎ respectively, equivalent to ‎%X‎ for unsignedint
(ثابت ماكرو)

[تعديل]مثال

#include <stdio.h>#include <inttypes.h>   int main(void){ printf("%zu\n", sizeof(int64_t)); printf("%s\n", PRId64); printf("%+"PRId64"\n", INT64_MIN); printf("%+"PRId64"\n", INT64_MAX);   int64_t n =7; printf("%+"PRId64"\n", n);   return0;}

خرج ممكن:

8 ld -9223372036854775808 +9223372036854775807 +7

[تعديل]أنظر أيضا

close