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

সি প্রোগ্রামিং-এ ফাংশনের প্রকারভেদ: লাইব্রেরি vs ইউজার-ডিফাইনড

ফাংশনের দুটি প্রধান প্রকার

  1. প্রিডিফাইনড / লাইব্রেরি ফাংশন (Predefined/Library Functions)
  2. ইউজার-ডিফাইনড ফাংশন (User-defined Functions)

১. প্রিডিফাইনড / লাইব্রেরি ফাংশন

  • সিস্টেম লাইব্রেরিতে প্রিডিফাইনড থাকে।
  • প্রোগ্রামার কোড রিয়ুজ করতে পারে, এরর-ফ্রি কোড লেখা যায়।
  • সিনট্যাক্স জানতে হয়, হেডার ফাইল ইনক্লুড করতে হয়।

উদাহরণ

  • sqrt() — math.h (স্কোয়ার রুট)
  • printf(), scanf() — stdio.h
  • clrscr(), getch() — conio.h (পুরনো কম্পাইলার)

প্রোগ্রাম: sqrt() ব্যবহার

#include <stdio.h>
#include <math.h>

int main() {
    int x, y;
    printf("Enter a positive number: ");
    scanf("%d", &x);
    y = sqrt(x);
    printf("Square root = %d\n", y);
    return 0;
}

আউটপুট

Enter a positive number: 25
Square root = 5

২. ইউজার-ডিফাইনড ফাংশন

  • প্রোগ্রামার নিজে লিখে, টেস্ট করে, ব্যবহার করে।
  • হেডার ফাইল লাগে না।
  • সিনট্যাক্স প্রোগ্রামার নিজে নির্ধারণ করে।

উদাহরণ: sum() ফাংশন

#include <stdio.h>

int sum(int a, int b); // প্রোটোটাইপ

int main() {
    int a, b, c;
    printf("Enter 2 numbers: ");
    scanf("%d %d", &a, &b);
    c = sum(a, b);
    printf("Sum = %d\n", c);
    return 0;
}

int sum(int a, int b) {
    return a + b;
}

আউটপুট

Enter 2 numbers: 10 20
Sum = 30

তুলনা

বিষয়লাইব্রেরি ফাংশনইউজার-ডিফাইনড
লেখা কে?কম্পাইলার ভেন্ডর / স্ট্যান্ডার্ড কমিটিপ্রোগ্রামার
হেডার ফাইলদরকারদরকার নেই
মডিফাই করা যায়?নাহ্যাঁ
উদাহরণprintf, sqrt, strlenmain, sum, swap, display

সর্বোত্তম অনুশীলন

  • বারবার ব্যবহার হওয়া লজিককে ইউজার-ডিফাইনড ফাংশনে বানান।
  • স্ট্যান্ডার্ড লাইব্রেরি ফাংশন জানুন এবং ব্যবহার করুন (চাকা পুনরাবिष्कার করবেন না)।
  • ফাংশন প্রোটোটাইপ main()-এর আগে বা হেডার ফাইলে রাখুন।
  1. সি প্রোগ্রামিং-এ ফাংশনের বিভাগ (Categories of Functions)

  2. উইন্ডোজে Safe Mode কী? Safe Mode-এর বিভিন্ন টাইপ কী কী?

  3. উইন্ডোজে Safe Mode কী? Safe Mode-এর berbagai টাইপ কী কী?

  4. macOS-এ পাসওয়ার্ড টাইপসের বৈচিত্র্য এক্সপ্লোর করুন: কীভাবে আপনার ডেটা প্রটেক্ট করে