Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Can We Use Function on Left Side of an Expression in C and C++?

  • Difficulty Level : Easy
  • Last Updated : 22 Dec, 2021

In C, it is not possible to have function names on the left side of an expression, but it’s possible in C++. 

How can we use the function on the left side of an expression in C++? 

In C++, only the functions which return some reference variables can be used on the left side of an expression. The reference works in a similar way to pointers, so whenever a function returns a reference, an implicit pointer is being returned to its return value. Therefore, through this, we can use a function on the left side of an assignment statement. The above has been demonstrated using the example given below,

CPP




// CPP program to demonstrate using a function on left side
// of an expression in C++
#include <iostream>
using namespace std;
  
// such a function will not be safe if x is non static
// variable of it
int& fun()
{
    static int x;
    return x;
}
  
// Driver Code
int main()
{
    fun() = 10;
  
    // this line prints 10 as output
    printf(" %d ", fun());
  
    getchar();
    return 0;
}
Output
 10 
My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!