২.১ সি ভাষার বৈশিষ্ট্য

সি একটি মধ্যম স্তরের প্রোগ্রামিং ভাষা। যা মূলত ডেনিস এম রিচি দ্বারা বেল ল্যাবস-এ ইউনিক্স অপারেটিং সিস্টেম বিকাশের জন্য তৈরি করা হয়েছিল। সি ভাষা প্রথমে ১৯৭২ সালে DEC PDP-11 কম্পিউটারে বাস্তবায়িত হয়েছিল। ১৯৭৮ সালে ব্রায়ান কার্নিঘান এবং ডেনিস রিচি সি ভাষা জনগণের জন্য সর্বপ্রথম উন্মুক্ত করেন। যা এখন Standard K&R হিসাবে পরিচিত। ইউনিক্স অপারেটিং সিস্টেম, সি কম্পাইলার এবং মূলত সমস্ত ইউনিক্স অ্যাপ্লিকেশন প্রোগ্রামগুলো সি ভাষায় লেখা হয়েছে।

সি প্রোগ্রামিং এর প্রথম বই:

১৯৭৮ সালে সি প্রোগ্রামিং এর প্রথম বই The C Programming Language প্রকাশিত হয়েছিল। এরপর ১৯৮৮ সালে এর ২য় সংস্করণ করা হয়। সংস্করণটি এখানেই সমাপ্ত হয়। ব্রায়ান কার্নিংহাম এবং ডেনিশ রিচি কর্তৃক লেখা এই বইটি “K&R” নামে জনপ্রিয়।   

সি প্রোগ্রামিং ব্যাপকভাবে কম্পিউটার প্রযুক্তিতে ব্যবহার করা হয়, আমরা বলতে পারি যে সি হল অন্য ভাষার উন্নয়নের জন্য একটি অনুপ্রেরণা। আমরা বিভিন্ন উদ্দেশ্যে সি ব্যবহার করতে পারি। নীচে সি প্রোগ্রামিং কিছু বৈশিষ্ট্য আলোচনা করা হল –

সি প্রোগ্রামিং ভাষার বৈশিষ্ট্য:

নিম্ন স্তরের ভাষা সমর্থন প্রোগ্রাম পোর্টেবিলিটি (বহনযোগ্যতা)
শক্তিশালী এবং বৈশিষ্ট্য সমৃদ্ধ বিট ম্যানিপুলেশন
উচ্চ স্তরের বৈশিষ্ট্য মডুলার প্রোগ্রামিং
পয়েন্টার এর দক্ষ ব্যবহার  

১) নিম্ন স্তরের ভাষা সমর্থনঃ 

    ১.১) সি প্রোগ্রামিং নিম্ন স্তরের বৈশিষ্ট্যগুলি সরবরাহ করে যা সাধারণত নিম্ন স্তরের ভাষা দ্বারা সরবরাহ করা হয়। সি ভাষা নিচু স্তরের ভাষার কাছাকাছি সম্পর্কিত, যেমন “এসেম্বলি ভাষা”।

    ১.২) এসেম্বলি ভাষার কোডগুলো সি ভাষায় লেখা অনেক সহজ।

২) প্রোগ্রাম পোর্টেবিলিটিঃ

    ২.১) সি প্রোগ্রামগুলি পোর্টেবল হয়। অর্থাৎ কোনো প্রকার সংশোধন ছাড়াই যেকোনো কম্পাইলার দিয়ে চালানো যায়।

    ২.২) কম্পাইলার এবং প্রাকপ্রসেসর জন্য সি প্রোগ্রাম বিভিন্ন পিসিতে চালান সম্ভব।

৩) শক্তিশালী এবং বৈশিষ্ট্য সমৃদ্ধঃ

    ৩.১) বিভিন্ন প্রকারের “ডেটা টাইপ” প্রদান করে।

    ৩.২) বিভিন্ন প্রকারের “ফাংশন” প্রদান করে।

    ৩.৩) প্রয়োজনীয় কন্ট্রোল এবং লুপ কন্ট্রোল স্টেটমেন্ট প্রদান করে।

৪) বিট ম্যানিপুলেশনঃ

    ৪.১) সি প্রোগ্রাম বিট ব্যবহার করে ব্যাবহার করা যায়। আমরা বিট স্তরে বিভিন্ন অপারেশন করতে পারি। আমরা বিট স্তরে মেমরি উপস্থাপনা পরিচালনা করতে পারি।

    ৪.২) এটি বিভিন্ন ধরনের বিট ম্যানিপুলেশন অপারেটর প্রদান করে। বিট পর্যায়ে ডেটা পরিচালনার জন্য আমরা বিট প্রজেক্ট পরিচালনা করতে পারি।

৫) উচ্চ স্তরের বৈশিষ্ট্যঃ 

    ৫.১) পূর্ববর্তী ভাষার সাথে তুলনায় এটা আরো ব্যবহারকারীর সাথে বন্ধুত্বপূর্ণ। কিন্তু পূর্ববর্তী ভাষা যেমন বিসিপিএল, প্যাসকেল এবং অন্যান্য প্রোগ্রামিং ভাষাগুলি ডেটা পরিচালনার জন্য এই ধরনের বৈশিষ্ট্যগুলি প্রদান করে না।

    ৫.২) পূর্ববর্তী ভাষার আছে সুবিবেচনা এবং বিধি। কিন্তু সি প্রোগ্রামিং পূর্ববর্তী ভাষার সমস্ত প্রয়োজনীয় বৈশিষ্ট্যগুলি সংগৃহীত করে, সুতরাং সি আরো কার্যকর ভাষা হয়ে ওঠে।

৬) মডুলার প্রোগ্রামিংঃ

    ৬.১) মডুলার প্রোগ্রামিং একটি সফ্টওয়্যার ডিজাইন কৌশল যা মডিউল নামে পরিচিত বিভিন্ন অংশে গঠিত সফটওয়্যারের পরিমাণ বৃদ্ধি করে।

    ৬.২) সি প্রোগ্রাম বিভিন্ন মডিউল দিয়ে গঠিত যা একসঙ্গে একত্রিত হয়ে একটি সম্পূর্ণ প্রোগ্রাম গঠন করে। 

৭) পয়েন্টার এর দক্ষ ব্যবহারঃ

    ৭.১) পয়েন্টারগুলি মেমরিতে সরাসরি অ্যাক্সেস করা আছে।

    ৭.২) সি ভাষা পয়েন্টার এর কার্যকর ব্যবহার সমর্থন করে।

সি ভাষার ফাইল এক্সটেনশনঃ

একটি সি প্রোগ্রাম ৩ লাইন থেকে লক্ষ লক্ষ লাইনে পরিবর্তিত হতে পারে এবং এটি এক্সটেনশান “.c” সহ এক বা একাধিক টেক্সট ফাইলগুলিতে লেখা হয়। উদাহরণস্বরূপ, hello.c । আপনি অন্য কোন টেক্সট এডিটরে আপনার সি প্রোগ্রামকে একটি ফাইলের মধ্যে “vi”, “vim”এক্সটেনশান দিয়ে লিখতে পারেন।