I am a beginner in programming and was trying out some combinations.
#include
int main()
{
int a=5;
printf(\"%d\",&a); // STATEMENT 1
print
a++
and ++a
and &
all three of them needs lvalue to operate on and when operated they return the rvalue
So when you do &(a++)
First, (a++) is performed -> a is taken as lvalue and (a++) returns rvalue
Second, &(a++) is performed -> a++ returns rvalue but & needs lvalue so lvalue is
missing,therefore an error.
For this similar reason you can't perform any of these:
++(a++) : lvalue missing
(++a)++ : lvalue missing
a++++ : lvalue missing
++++a : lvalue missing