Table of Contents

    SEMESTER – I - COMS - Unit – 3: Section 5: Introduction to C: User defined functions

    Introduction to C: User Defined Functions (COMS Semester I - Unit 3: Section 5)

    C প্রোগ্রামিং-এ Function একটি অত্যন্ত গুরুত্বপূর্ণ ধারণা। User Defined Function (UDF) ব্যবহার করে আমরা নিজের প্রয়োজন অনুযায়ী function তৈরি করতে পারি। এটি প্রোগ্রামকে সহজ, পরিষ্কার এবং পুনঃব্যবহারযোগ্য (reusable) করে তোলে।


    ১. Function কী?

    Function হলো একটি নির্দিষ্ট কাজ সম্পাদনের জন্য তৈরি কোডের একটি ব্লক।

    উদাহরণ:

    একটি ফাংশন দিয়ে দুইটি সংখ্যা যোগ করা যেতে পারে।


    ২. User Defined Function কী?

    User Defined Function হলো এমন function যা programmer নিজে তৈরি করে।

    C-তে কিছু built-in function থাকে (যেমন printf), কিন্তু যখন নিজের কাজের জন্য function তৈরি করা হয়, তখন সেটিকে User Defined Function বলা হয়।


    ৩. User Defined Function-এর প্রয়োজন (Need)

    • ✔ বড় প্রোগ্রামকে ছোট ছোট অংশে ভাগ করা যায়
    • ✔ কোড পুনরায় ব্যবহার করা যায়
    • ✔ প্রোগ্রাম সহজে বোঝা যায়
    • ✔ debugging সহজ হয়

    ৪. Function-এর Structure

    
    return_type function_name(parameters) {
        // function body
    }
    

    ৫. Function Declaration, Definition এবং Call

    ✔ Declaration

    
    int add(int, int);
    

    ✔ Definition

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

    ✔ Function Call

    
    int result = add(5, 3);
    

    ৬. সম্পূর্ণ উদাহরণ

    
    #include <stdio.h>
    
    int add(int a, int b) {
        return a + b;
    }
    
    int main() {
        int sum = add(10, 20);
        printf("Sum = %d", sum);
        return 0;
    }
    

    ৭. Call by Value

    Call by Value-এ variable-এর কপি function-এ পাঠানো হয়।

    
    void change(int x) {
        x = 100;
    }
    

    এখানে মূল variable পরিবর্তন হবে না।


    ৮. Call by Reference

    Call by Reference-এ variable-এর address পাঠানো হয়, ফলে মূল variable পরিবর্তন হয়।

    
    #include <stdio.h>
    
    void change(int *x) {
        *x = 100;
    }
    
    int main() {
        int a = 10;
        change(&a);
        printf("%d", a); // Output: 100
        return 0;
    }
    

    ৯. Call by Value vs Call by Reference

    বিষয় Call by Value Call by Reference
    ডেটা পাঠানো কপি পাঠানো হয় address পাঠানো হয়
    মূল মান পরিবর্তন হয় না হয়
    ব্যবহার সাধারণ কাজ ডেটা পরিবর্তন দরকার হলে

    ১০. বাস্তব জীবনের উদাহরণ

    ✔ Call by Value → তুমি বন্ধুকে বইয়ের ফটোকপি দিলে ✔ Call by Reference → তুমি বন্ধুকে আসল বইটাই দিলে


    উপসংহার

    User Defined Function প্রোগ্রামিং-এর একটি গুরুত্বপূর্ণ অংশ। এটি কোডকে modular করে এবং সহজ করে তোলে। Call by Value এবং Call by Reference বোঝা খুবই জরুরি, কারণ এগুলোর মাধ্যমে আমরা ডেটা কিভাবে function-এ পাঠানো হবে তা নিয়ন্ত্রণ করতে পারি।


    Quick Revision

    • Function → নির্দিষ্ট কাজের কোড ব্লক
    • User Defined Function → programmer নিজে তৈরি করে
    • Call by Value → কপি পাঠানো হয়
    • Call by Reference → address পাঠানো হয়
    • Function কোডকে reusable করে