সমস্যা
সি প্রোগ্রামিং করার সময় কিছু আইনি এবং অবৈধ ঘোষণা এবং প্রাথমিককরণ উল্লেখ করুন?
আইনি এবং অবৈধ বিবৃতি নিয়ে আলোচনা করার আগে চলুন দেখে নেওয়া যাক কিভাবে C-তে ভেরিয়েবলগুলি ঘোষণা এবং শুরু করা যায়।
পরিবর্তনশীল ঘোষণা
নিম্নলিখিত পরিবর্তনশীল ঘোষণার সিনট্যাক্স -
সিনট্যাক্স
Datatype v1,v2,… vn;
যেখানে v1, v2,...vn হল ভেরিয়েবলের নাম।
উদাহরণস্বরূপ, int sum;
float a,b;
ভেরিয়েবল দুটি উপায়ে ঘোষণা করা যেতে পারে -
-
স্থানীয় ঘোষণা
-
বিশ্বব্যাপী ঘোষণা
'স্থানীয় ঘোষণা' প্রধান ব্লকের ভিতরে একটি পরিবর্তনশীল ঘোষণা করছে এবং এর মান সেই ব্লকের মধ্যে উপলব্ধ।
'গ্লোবাল ডিক্লারেশন' মূল ব্লকের বাইরে একটি পরিবর্তনশীল ঘোষণা করছে এবং এর মান পুরো প্রোগ্রাম জুড়ে উপলব্ধ।
উদাহরণস্বরূপ,
int a, b; /* global declaration*/ main ( ){ int c; /* local declaration*/ - - - }
ভেরিয়েবল ইনিশিয়ালাইজেশন
নিম্নে পরিবর্তনশীল সূচনা -
এর সিনট্যাক্স দেওয়া হলসিনট্যাক্স
Datatype v1=number;
উদাহরণস্বরূপ,
int sum=0; float a=1,b=4.5;
ডেটা টাইপ ব্যবহার করে ভেরিয়েবল ঘোষণা করুন, আমরা ঘোষণার সময় মানটি শুরু করতে পারি। সুতরাং, মানগুলি শুরু করার এবং ঘোষণা করার সময় আমাদের নিয়মগুলি অনুসরণ করতে হবে
আসুন সি.
-এ আইনী এবং অবৈধ ঘোষণা এবং প্রাথমিককরণের কিছু উদাহরণ দেখিউদাহরণ
-
চর a=65;
এটি একটি আইনি বিবৃতি কারণ আমরা একটি ধ্রুবক দিয়ে একটি পরিবর্তনশীল শুরু করতে পারি।
-
স্ট্যাটিক int p=20, q=p*p
এটি একটি অবৈধ বিবৃতি কারণ স্ট্যাটিক ভেরিয়েবলকে একটি ধ্রুবক দ্বারা আরম্ভ করতে হয় কিন্তু এখানে q একটি ধ্রুবক দিয়ে আরম্ভ করা হয় না৷
-
ডাবল x=30 *PI
এটি একটি আইনি বিবৃতি কারণ এখানে আমরা একটি ধ্রুবক অভিব্যক্তি সহ একটি পরিবর্তনশীল শুরু করেছি৷
-
ডাবল ব্যাস []={1,PI/2, PI, 2*PI/2}
এটি একটি আইনি বিবৃতি, এখানে আমরা ধ্রুবক সহ অ্যারে উপাদানগুলি শুরু করেছি৷
নমুনা প্রোগ্রাম
আইনি ঘোষণা এবং প্রাথমিককরণ সহ −
#include<stdio.h> void main ( ){ int a,b; a= 10, b = 20; printf (" %d", a<b); printf (" %d", a<=b); printf (" %d", a>b); printf (" %d", a>=b); printf (" %d", a = =b); printf (" %d", a ! =b); }
আউটপুট
1 1 0 0 0 1
উদাহরণ
বেআইনি ঘোষণা এবং সূচনা সহ -
#include <stdio.h> int main(){ static int p=20, q=p*p;//illegal initialization printf("%d%d",p,q); return 0; }
আউটপুট
error will be occurred error: initializer element is not constant static int p=20, q=p*p;