কম্পিউটার টিউটোরিয়াল

সি ভাষায় অপরোক্ষ রিটার্ন টাইপ int (Implicit int Return Type)

সি ভাষায় (C89/C90 পর্যন্ত) যদি কোনো ফাংশনের রিটার্ন টাইপ স্পষ্টভাবে না দেওয়া থাকে, তবে কম্পাইলার তা int ধরে নেয়। এটি ইমপ্লিসিট int (implicit int) कहলে। কিন্তু C99 স্ট্যান্ডার্ড থেকে এই ফিচার সরিয়ে ফেলা হয়েছে — এখন রিটার্ন টাইপ লিখতে হয় বাধ্যতামূলক।

উদাহরণ (পুরানো স্টাইল — C89)

#include <stdio.h>

my_function(int x) { // রিটার্ন টাইপ নেই — ইমপ্লিসিট int
    return x * 2;
}

int main(void) {
    printf("Value is: %d", my_function(10));
    return 0;
}

আউটপুট

Value is: 20

আধুনিক সি (C99 এবং পরবর্তী) — এরর হবে

// C99/C11/C18 কম্পাইলার দিয়ে কম্পাইল করলে এরর:
// error: return type defaults to 'int' [-Werror=implicit-int]
my_function(int x) { ... }

সঠিক পদ্ধতি (সব স্ট্যান্ডার্ডে)

#include <stdio.h>

int my_function(int x) { // স্পষ্ট রিটার্ন টাইপ
    return x * 2;
}

int main(void) {
    printf("Value is: %d", my_function(10));
    return 0;
}

সারসংক্ষেপ

  • পুরানো কোডে রিটার্ন টাইপ ছাড়া ফাংশন দেখা যায়
  • আধুনিক কম্পাইলার (GCC, Clang, MSVC) ডিফল্টে ওয়ার্নিং বা এরর দেয়
  • সবসময় স্পষ্ট রিটার্ন টাইপ লিখুন — ভালো অনুশীলন এবং পোর্টেবিলিটির জন্য
  1. MySQL-এ INT টাইপের YYYYMMDD ফরম্যাটকে DATE-এ রূপান্তর করা

  2. MySQL-এ TINYINT কলামে <> 1 বা IS NULL শর্ত দিয়ে রেকর্ড ফিল্টার করুন

  3. পয়েন্টার ব্যবহার করে ইউজার-ইনপুট অ্যারে টাইপ খুঁজে বের করার সি প্রোগ্রাম

  4. সি ভাষায় ইমপ্লিসিট ও এক্সপ্লিসিট টাইপ কনভার্সন