অস্থির মানে দুটি জিনিস -
- আপনার কোনো কোড পরিবর্তন না করেই ভেরিয়েবলের মান পরিবর্তন হতে পারে। তাই যখনই কম্পাইলার ভেরিয়েবলের মান পড়ে, তখন এটা ধরে নাও যেতে পারে যে এটি শেষবার পড়ার মতো, অথবা এটি সংরক্ষিত শেষ মানের মতোই, তবে এটি অবশ্যই আবার পড়তে হবে।
- একটি উদ্বায়ী ভেরিয়েবলে একটি মান সংরক্ষণ করার কাজ হল একটি "পার্শ্ব প্রতিক্রিয়া" যা বাইরে থেকে লক্ষ্য করা যায়, তাই কম্পাইলারকে একটি মান সংরক্ষণের কাজটি সরানোর অনুমতি দেওয়া হয় না; উদাহরণস্বরূপ, যদি দুটি মান একটি সারিতে সংরক্ষণ করা হয়, তাহলে কম্পাইলারকে অবশ্যই মানটি দুইবার সংরক্ষণ করতে হবে।
উদাহরণ হিসেবে −
i = 2; i = i;
কম্পাইলারকে অবশ্যই দুই নম্বর সঞ্চয় করতে হবে, ভেরিয়েবল i পড়তে হবে, ভেরিয়েবলটি সঞ্চয় করতে হবে যা এটি i-তে পড়বে।
আপনি এখানে উদ্বায়ী কীওয়ার্ড সম্পর্কে আরও বিশদ জানতে পারেন - https://www.geeksforgeeks.org/understanding-volatile-qualifier-in-c/