আইএসও / আইইসি 9899: 2018 (সি 18) এ এটি 7.20.1.3 এর অধীনে বলা হয়েছে:
7.20.1.3 দ্রুততম সর্বনিম্ন-প্রস্থের পূর্ণসংখ্যার প্রকারগুলি
1 নিম্নলিখিত ধরণের প্রত্যেকটি একটি পূর্ণসংখ্যার প্রকার নির্ধারণ করে যা সাধারণত দ্রুততম 268 হয়) কমপক্ষে নির্দিষ্ট প্রস্থের সমস্ত পূর্ণসংখ্যার ধরণের মধ্যে কাজ করে।
2 টাইপডিফ নামটি
int_fastN_t
কমপক্ষে এন এরuint_fastN_t
প্রস্থ সহ দ্রুততম স্বাক্ষরিত পূর্ণসংখ্যার প্রকারটি নির্ধারণ করে The3 নিম্নলিখিত ধরণের প্রয়োজন:
int_fast8_t
,int_fast16_t
,int_fast32_t
,int_fast64_t
,uint_fast8_t
,uint_fast16_t
,uint_fast32_t
,uint_fast64_t
এই ফর্মের অন্যান্য সমস্ত ধরণের alচ্ছিক।
268) নির্ধারিত ধরণেরটি সমস্ত উদ্দেশ্যে দ্রুত হওয়ার গ্যারান্টিযুক্ত নয়; যদি প্রয়োগের অন্য ধরণের জন্য কোনও প্রকারের চয়ন করার কোনও সুস্পষ্ট ভিত্তি না থাকে তবে এটি স্বাক্ষর এবং প্রস্থের প্রয়োজনীয়তাগুলি পূরণ করে কিছু পূর্ণসংখ্যার ধরণের পছন্দ করবে।
তবে এই "দ্রুত" পূর্ণসংখ্যার ধরণ কেন দ্রুত হয় তা বলা হয়নি।
- এই পূর্ণসংখ্যার ধরণগুলি অন্যান্য পূর্ণসংখ্যার ধরণের চেয়ে দ্রুত কেন?
আমি প্রশ্নটি সি ++ দিয়ে ট্যাগ করেছি, কারণ দ্রুত পূর্ণসংখ্যার প্রকারগুলি এর শিরোলেখ ফাইলটিতে সি ++ 17 এও পাওয়া যায় cstdint
। দুর্ভাগ্যক্রমে, আইএসও / আইইসি 14882: 2017 (সি ++ 17) এ তাদের ব্যাখ্যা সম্পর্কে এমন কোনও বিভাগ নেই; আমি অন্যথায় প্রশ্নের অংশে প্রয়োগ করেছি।
তথ্য: সি তে, তারা এর শিরোনাম ফাইলটিতে ঘোষিত হয় stdint.h
।
typedef
বিবৃতি। সুতরাং সাধারণত , এটি স্ট্যান্ডার্ড গ্রন্থাগার পর্যায়ে করা হয়। অবশ্যই, সি মান রাখে কোনো সত্যিকারের তারা কি সীমাবদ্ধতা typedef
সুতরাং উদাহরণস্বরূপ একটি টিপিক্যাল বাস্তবায়ন করা হয় - এতে int_fast32_t
একটি typedef
এর int
একটি 32 বিট সিস্টেমে, কিন্তু একটি প্রকল্পিত কম্পাইলার পারে উদাহরণস্বরূপ একটি বাস্তবায়ন __int_fast
স্বকীয় ধরন এবং কিছু অভিনব করতে অঙ্গীকার সেই ধরণের ভেরিয়েবলের ক্ষেত্রে কেস-বাই-কেস ভিত্তিতে দ্রুততম মেশিনের প্রকারটি চয়ন করতে অপ্টিমাইজেশন এবং তারপরে গ্রন্থাগারটি কেবল এটির পক্ষে পারে typedef
।