C-তে ৫টি ছোট বিষয় যা আমাকে বিভ্রান্ত করেছিল
আমি ভেবেছিলাম C শেখা সহজ হবে।
বড় ধারণাগুলোর চেয়ে ছোটখাটো বিষয়গুলো আমাকে বেশি বিভ্রান্ত করেছিল।
এখানে এমন পাঁচটি বিষয় দেওয়া হলো যা আয়ত্ত করতে আমার বেশ সময় লেগেছে:
ইনডেক্সিং ০ থেকে শুরু হয় অ্যারে ১-এর পরিবর্তে ০ থেকে শুরু হয়। মেমরি যেভাবে কাজ করে তার কারণেই এমনটি হয়। শুরুতে এটি নিয়ে আমার বেশ বেগ পেতে হয়েছিল।
সেমিকোলন নিয়ম একটি সেমিকোলন বাদ পড়লেই আপনার প্রোগ্রামটি কাজ করা বন্ধ করে দেবে। এরর মেসেজগুলো প্রায়ই সঠিক জায়গাটি দেখাতে ব্যর্থ হয়। এটি আমাকে অনেক হতাশ করেছিল।
অ্যাসাইনমেন্ট বনাম সমতা (Assignment vs. Equality) আমি প্রায়ই = এবং ==-এর মধ্যে গুলিয়ে ফেলতাম। একক = চিহ্নটি একটি মান অ্যাসাইন করে। ডাবল == চিহ্নটি সমতা পরীক্ষা করে। একবার আমি if(a = 5) লিখে ফেলেছিলাম এবং এতে আমার লজিক নষ্ট হয়ে গিয়েছিল।
ইনফিনিট লুপ (Infinite loops) আমার লুপগুলো মাঝে মাঝে অনন্তকাল ধরে চলতে থাকত। আমি সাধারণত লুপ ভেরিয়েবল আপডেট করতে ভুলে যেতাম। এই ভুলগুলো ডিবাগ করতে করতে আমি ধৈর্য ধরতে শিখেছি।
স্ট্রিং কীভাবে কাজ করে C-তে স্ট্রিং কোনো বিশেষ টাইপ নয়। এগুলো হলো ক্যারেক্টার অ্যারে (arrays of characters)। শেষে একটি নাল ক্যারেক্টার (null character) থাকে, সেটি অবশ্যই মনে রাখতে হবে।
এই বিষয়গুলো অবহেলা করলে আপনার কাজের গতি কমে যেতে পারে।
যদি বিভ্রান্ত বোধ করেন তবে চিন্তিত হবেন না। বিভ্রান্তি শেখারই একটি অংশ।
অনুশীলন চালিয়ে যান। সবকিছু ধীরে ধীরে পরিষ্কার হয়ে যাবে।
Source: https://dev.to/tahami_akservices_cb075e/5-small-things-in-c-that-confused-me-at-first-3m3o
Optional learning community: https://t.me/GyaanSetuAi