Null character
নাল অক্ষর (এছাড়াও নাল টার্মিনেটর) হল একটি নিয়ন্ত্রণ অক্ষর যার মান শূন্য। এটি বাউডোট এবং আইটিএ2 কোড, আইএসও/আইইসি 646 (বা এএসসিআইআই), সি0 নিয়ন্ত্রণ কোড, ইউনিভার্সাল কোডেড ক্যারেক্টর সেট (বা ইউনিকোড) এবং ইবিসিডিআইসি দ্বারা সংজ্ঞায়িত অনেক অক্ষরের সেটে উপস্থিত রয়েছে। এটি প্রায় সমস্ত মূলধারার প্রোগ্রামিং ভাষায় পাওয়া যায়। এটি প্রায়শই এন. ইউ. এল (বা এন. ইউ. এল. এল) হিসাবে সংক্ষিপ্ত করা হয়, যদিও কিছু প্রসঙ্গে এই শব্দটি নাল পয়েন্টারের জন্য ব্যবহৃত হয়। 8-বিট কোডে, এটি একটি নাল বাইট হিসাবে পরিচিত। এই অক্ষরটির মূল অর্থ ছিল এন. ও. পি-এর মতো-যখন কোনও প্রিন্টার বা টার্মিনালে পাঠানো হয়, তখন এর কোনও প্রভাব পড়ে না (তবে কিছু টার্মিনাল ভুলভাবে এটিকে স্থান হিসাবে প্রদর্শন করে)। যখন ইলেক্ট্রোমেকানিকাল টেলিপ্রিন্টারগুলি কম্পিউটার আউটপুট ডিভাইস হিসাবে ব্যবহার করা হত, তখন প্রতিটি মুদ্রিত লাইনের শেষে এক বা একাধিক নাল অক্ষর পাঠানো হত যাতে প্রক্রিয়াটি পরবর্তী লাইনের প্রথম মুদ্রণ অবস্থানে ফিরে আসতে পারে। পাঞ্চড টেপে, চরিত্রটিকে কোনও ছিদ্র ছাড়াই উপস্থাপন করা হয়, তাই একটি নতুন আনপঞ্চড টেপ প্রাথমিকভাবে নাল অক্ষর দিয়ে ভরা হয় এবং প্রায়শই নালের উপর দিয়ে টেপে নতুন অক্ষরগুলিকে ঘুষি মেরে নাল অক্ষরের সংরক্ষিত জায়গায় পাঠ্য ঢোকানো যেতে পারে। বর্তমানে প্রোগ্রামিং ভাষা সি এবং এর ডেরিভেটিভস এবং অনেক ডেটা ফরম্যাটে অক্ষরটির অনেক বেশি তাৎপর্য রয়েছে, যেখানে এটি একটি সংরক্ষিত অক্ষর হিসাবে কাজ করে যা একটি স্ট্রিংয়ের শেষকে বোঝাতে ব্যবহৃত হয়, যাকে প্রায়শই নাল-টার্মিনেটেড স্ট্রিং বলা হয়। এটি স্ট্রিংকে শুধুমাত্র একটি বাইটের ওভারহেড সহ যে কোনও দৈর্ঘ্যের অনুমতি দেয়; একটি গণনা সংরক্ষণের বিকল্পের জন্য স্ট্রিং দৈর্ঘ্যের সীমা 255 বা একাধিক বাইটের ওভারহেড প্রয়োজন (নাল-টার্মিনেটেড স্ট্রিং নিবন্ধে বর্ণিত অন্যান্য সুবিধা/অসুবিধা রয়েছে)। সোর্স কোডে উপস্থাপনা, নাল অক্ষরটি প্রায়শই স্ট্রিং লিটেরালগুলিতে (উদাহরণস্বরূপ, "এবিসি \0ডেফ") বা অক্ষর ধ্রুবকগুলিতে ('\0') এস্কেপ সিকোয়েন্স হিসাবে উপস্থাপিত হয়; পরেরটিকে কেবল 0 হিসাবেও লেখা যেতে পারে (উদ্ধৃতি বা স্ল্যাশ ছাড়াই)। অনেক ভাষায় (যেমন সি, যা এই স্বরলিপির প্রবর্তন করেছিল), এটি একটি পৃথক পালানোর ক্রম নয়, তবে একটি একক অষ্টক অঙ্ক 0 সহ একটি অষ্টক পালানোর ক্রম; ফলস্বরূপ, 0-এর পরে 0 থেকে 7-এর কোনও সংখ্যা অবশ্যই অনুসরণ করা উচিত নয়; অন্যথায় এটি একটি দীর্ঘ অষ্টক পালানোর ক্রমের শুরু হিসাবে ব্যাখ্যা করা হয়। বিভিন্ন ভাষায় ব্যবহৃত অন্যান্য পালানোর ক্রমগুলি হল \000, \x00, \z, বা \u0000। একটি শূন্য অক্ষর শতাংশ কোড% 00 সহ একটি ইউ. আর. এল-এ স্থাপন করা যেতে পারে। একটি নাল অক্ষর উপস্থাপন করার ক্ষমতার অর্থ সর্বদা এই নয় যে ফলস্বরূপ স্ট্রিংটি সঠিকভাবে ব্যাখ্যা করা হবে, কারণ অনেক প্রোগ্রাম নালটিকে স্ট্রিংয়ের শেষ হিসাবে বিবেচনা করবে। এইভাবে এটি টাইপ করার ক্ষমতা (অনিয়ন্ত্রিত ব্যবহারকারী ইনপুটের ক্ষেত্রে) নাল বাইট ইনজেকশন নামে পরিচিত একটি দুর্বলতা তৈরি করে এবং নিরাপত্তা শোষণের দিকে নিয়ে যেতে পারে। ক্যারেট নোটেশনে নাল অক্ষরটি হল @। কিছু কীবোর্ডে, কেউ ধরে এবং চেপে ধরে একটি শূন্য অক্ষর লিখতে পারে (মার্কিন বিন্যাসে প্রায়শই কাজ করবে, @চিহ্ন পাওয়ার প্রয়োজন নেই)। নালের জন্য হেক্সাডেসিমাল স্বরলিপি হল 00। বেস64 স্ট্রিং এএ = = ডিকোডিং করলে নাল অক্ষরও পাওয়া যায়। ডকুমেন্টেশনে, নাল অক্ষরকে কখনও কখনও "এন. ইউ. এল" অক্ষর সম্বলিত একক-এম-প্রস্থ প্রতীক হিসাবে উপস্থাপন করা হয়। ইউনিকোডে এর জন্য একটি অক্ষর রয়েছেঃ সমস্ত আধুনিক অক্ষর সেটগুলিতে, নাল অক্ষরের একটি কোড পয়েন্ট মান শূন্য। বেশিরভাগ এনকোডিংয়ে, এটি শূন্য মান সহ একটি একক কোড ইউনিটে অনুবাদ করা হয়। উদাহরণস্বরূপ, ইউটিএফ-8-এ এটি একটি একক শূন্য বাইট। তবে, পরিবর্তিত ইউটিএফ-8-এ নাল অক্ষরটি দুটি বাইট হিসাবে এনকোড করা হয়ঃ 0xC0,0x80। এটি শূন্যের মান সহ বাইটকে স্ট্রিং টার্মিনেটর হিসাবে ব্যবহার করার অনুমতি দেয়, যা এখন কোনও অক্ষরের জন্য ব্যবহৃত হয় না। রেফারেন্স বাহ্যিক লিঙ্ক নাল বাইট ইনজেকশন ডাব্লু. এ. এস. সি থ্রেট ক্লাসিফিকেশন নাল বাইট অ্যাটাক সেকশন পয়জন নাল বাইট ইন্ট্রোডাকশন নল বাইট অ্যাটাক অ্যাপল নাল বাইট ইনজেকশন কিউ. আর কোড দুর্বলতা নিয়ন্ত্রণ অক্ষর কম্পিউটার নিরাপত্তা শোষণ