C program for passing structures as function arguments and returning a structure from a function

This program will demonstrate example for passing Structures as function arguments and returning a structure from a function in C language.

Passing and returning structures to/from function

Structures can be passed as function arguments.

We can have a function of type returning a structure or a pointer to it, below code shows how to operate when we have a function taking structure as an argument:

Passing structure in function and returning structure from function program in C

#include <stdio.h>

// Lets create a structure first
struct FirstStruct {
    int Num1;
    int Num2;
} FirstStruct_IP;

// function declarations
struct FirstStruct TakeUserInput(void);
void DisplayOutput(struct FirstStruct Input);

// structure object declaration
struct FirstStruct inputStruct;

int main()
{
    // create a structure to get a return from TakeUserInput function
    // Now use the DisplayOutput to print the input
    DisplayOutput(TakeUserInput());

    return 0;
}

// This function returns a structure after storing 
// the user input into it
struct FirstStruct TakeUserInput(void)
{
    printf("Enter a number: ");
    scanf("%d", &inputStruct.Num1);
    printf("Enter a number again: ");
    scanf("%d", &inputStruct.Num2);

    return inputStruct;
}

// Function taking Structure as argument
void DisplayOutput(struct FirstStruct Input)
{
    printf("%d\n", ((Input.Num1) + (Input.Num2)));
}

Output

Enter a number: 10
Enter a number again: 20
30

C Structure & Union Programs »

Comments and Discussions!

Load comments ↻





Copyright © 2024 www.includehelp.com. All rights reserved.