Skip to main content

C Function Arguments

Functions

C Function Arguments

While calling a function, the arguments can be passed to a function in two ways, Call by value and call by reference.

TypeDescription
Call by Value
  • The actual parameter is passed to a function.
  • New memory area created for the passed parameters, can be used only within the function.
  • The actual parameters can not be modified here.
Call by Reference
  • Instead of copying variable, address is passed to function as parameters.
  • Address operator(&) is used in the parameter of the called function.
  • Changes in function reflects change of the original variables.

Call by Value

Example:
#include<stdio.h>

/* function declaration */
int addition(int num1, int num2);

int main()
{
/* local variable definition */
int answer;
int num1 = 10;
int num2 = 5;

/* calling a function to get addition value */
answer
= addition(num1,num2);

printf
("The addition of two numbers is: %d\n",answer);
return 0;
}

/* function returning the addition of two numbers */
int addition(int a,int b)
{
return a + b;
}
Program Output:
The addition of two numbers is: 15

Call by Reference

Example:
#include<stdio.h>

/* function declaration */
int addition(int *num1, int *num2);

int main()
{
/* local variable definition */
int answer;
int num1 = 10;
int num2 = 5;

/* calling a function to get addition value */
answer
= addition(&num1,&num2);

printf
("The addition of two numbers is: %d\n",answer);
return 0;
}

/* function returning the addition of two numbers */
int addition(int *a,int *b)
{
return *a + *b;
}
Program Output:
The addition of two numbers is: 15

Comments

For Programs Click Here

Popular posts from this blog

Python Lists

Python Lists Dealing with data in a structured format is quiet generous, and this is possible if those data are set accordingly in a specific manner. So, Python provides these data structures named ‘lists’ and ‘tuples’ that are used to organize data in  single set. Python has 6 built-in sequences and among them the most famous are “lists and tuples”. The lists are containers that hold a number of other objects in a given order. It usually puts into practice the sequence protocol and allows programmers to add or remove objects from that sequence. Each element of the sequence is assigned a number i.e. he index and the first index is 0 (zero). This versatile data-type of Python is written in a sequence of list separated by commas between expressions. Creating Lists To build a list, just put a number of expressions in square brackets. The syntax is: Syntax: lst1 = [ ] # lst1 is the name of the list lst2 = [ expression1 , …. , expression_N ] Example: #!/usr/bin/python ls...

C++ Objects and Classes

C++ Object Oriented C++ Objects and Classes In object-oriented programming languages like C++, the data and functions (procedures to manipulate the data) are bundled together as a self-contained unit called an object. A class is an extended concept similar to that of structure in C programming language; this class describes the data properties alone. In C++ programming language, class describes both the properties (data) and behaviors (functions) of objects. Classes are not objects, but they are used to instantiate objects. What is a class? A class is an abstract data type similar to ‘ C structure ‘. Class representation of objects and the sets of operations that can be applied to such objects. Class consists of Data members and methods. Primary purpose of a class is to held data/information. This is achieved with attributes which is also know as data members. The member functions determine the behavior of the class i.e. provide definition for supporting various operations on data held...

C++ Qualifiers and Storage Classes

C++ Qualifiers and Storage Classes Qualifiers and storage class are smaller but important programming concept that helps to make the quality of a variable more accurate for using that variable within the program. In this chapter you will learn about how qualifiers are used with variables and what the roles of different storage classes in C++ are. What is a Qualifier? A qualifier is a token added to a variable which adds an extra  quality , such as specifying volatility or constant-ness to a variable. They act like an adjective for a variable. With or without a qualifier, the variable itself still occupies the same amount of memory, and each bit has the same interpretation or contribution to the state/value. Qualifiers just specify something about how it may be accessed or where it is stored. Three qualifiers are there in C++. These are: const : This is used to define that the type is constant. volatile : his is used to define that the type is volatile. mutable:  applies to non...