সমস্যা
ইনিশিয়ালাইজেশন ছাড়া int এবং float ভেরিয়েবল ঘোষণা করে তাদের মান প্রিন্ট করলে কী হবে? ব্যাখ্যা করুন।
সমাধান
- অনইনিশিয়ালাইজড ভেরিয়েবল প্রিন্ট করলে ০ বা গার্বেজ ভ্যালু রিটার্ন করে।
- ভেরিয়েবল ডিক্লেয়ার করলে মেমরি লোকেশন অ্যালোকেট হয়। ইনিশিয়ালাইজেশন সেটা মান দিয়ে ভরার চেষ্টা।
- ইনিশিয়ালাইজ না করলে ডিফল্টভাবেই ০ বা গার্বেজ ভ্যালু থাকে। প্রিন্ট করলে তা দেখায়।
উদাহরণ প্রোগ্রাম
#include<stdio.h>
int main() {
float a, b, c;
int x, y, z;
printf("value of a:%f\n", a);
printf("value of b:%f\n", b);
printf("value of c:%f\n", c);
printf("value of x:%d\n", x);
printf("value of y:%d\n", y);
printf("value of z:%d", z);
return 0;
}
আউটপুট
value of a:0.000000 value of b:0.000000 value of c:0.000000 value of x:1512368 value of y:0 value of z:27