Когда мы помещаем уравнение в круглые скобки, оно рассматривается как выражение. И это возвращает некоторое значение, которое обеспечивает решение ошибки.

я есть :

#include<stdio.h>

int main()
{
 int a=5,b=6;
 (a>b)?b=a:b=b;    // Here is the error
 return 0;
}

Но если я заменю:

(a>b)?b=a:b=b;       // Error
with   
(a>b)?(b=a):(b=b);   // No-Error

Я понимаюlvalue это значение, которому можно присвоить что-то и чем оно отличается отrvalue, но почемуextra parenthesis сделать разницу.

Ответы на вопрос(4)

Ваш ответ на вопрос