Skip to content
Related Articles
Get the best out of our app
GeeksforGeeks App
Open App
geeksforgeeks
Browser
Continue

Related Articles

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

Improve Article
Save Article
Like Article
Improve Article
Save Article
Like Article

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 

Time Complexity : O(1)

Auxiliary Space: O(1)

My Personal Notes arrow_drop_up
Last Updated : 21 Jun, 2022
Like Article
Save Article
Similar Reads