false
в первый раз и true
во второй раз. Помните, что =
является оператором присваивания: он присваивает значение второго операнда первому, а затем возвращает это значение. Например:
int foo = 1;
int bar = (foo = 2);
Вторая строка здесь присваивает 2 к foo
, затем возвращает 2 другому оператору присваивания, который присваивает 2 строке В конце концов, и foo
, и bar
имеют значение 2.
Редактировать: Вот почему допустимо связывать операции присваивания; например,
int foo;
int bar;
foo = bar = 2; // Equivalent to foo = (bar = 2);