সি একটি মিড-লেভেল প্রোগ্রামিং ভাষা। এটি মেশিন ভাষার কাছাকাছি হলেও, এটি উচ্চ স্তরের ভাষার মতোও। সি ভাষার সাহায্যে, আমরা মেশিন ভাষার মতোই কম্পিউটারকে সরাসরি নির্দেশনা দিতে পারি, কিন্তু এটি উচ্চ স্তরের ভাষার মতোই সহজবোধ্য।
যেসব বৈশিষ্ট্যের কারণে সি কে মিড-লেভেল ল্যাংগুয়েজ বা ভাষা বলা হয়:
-
সি ভাষাতে মেশিন ভাষার মতোই নির্দেশনা রয়েছে, যেমন অ্যাড্রেসিং মোড, ডেটা টাইপ, অ্যারিথমেটিক অপারেশন, কন্ডিশনাল স্টেটমেন্ট, ইত্যাদি।
-
সি ভাষাতে প্রোগ্রামাররা মেশিন মেমরি অ্যাক্সেস করতে পারে।
-
সি ভাষাতে প্রোগ্রামাররা মেশিন কোডকে সরাসরি ইন্টারপোলেট করতে পারে।
আবার সি ভাষার কিছু বৈশিষ্ট্য যা এটিকে উচ্চ স্তরের ভাষা করে তোলে:
-
সি ভাষাতে উচ্চ স্তরের ভাষার মতোই ডেটা টাইপ রয়েছে, যেমন ইন্টিজার, ফ্লোটিং-পয়েন্ট, চরিত্র, ইত্যাদি।
-
সি ভাষাতে উচ্চ স্তরের ভাষার মতোই ভেরিয়েবল ডেক্লারেশন রয়েছে।
-
সি ভাষাতে উচ্চ স্তরের ভাষার মতোই ফাংশন রয়েছে।
সি ভাষা বিভিন্ন ধরনের সফ্টওয়্যার তৈরির জন্য ব্যবহৃত হয়, যেমন অপারেটিং সিস্টেম, ডিভাইস ড্রাইভার, অ্যাপ্লিকেশন সফ্টওয়্যার, ইত্যাদি।