Итак, я хочу сделать простой оператор if, подобный этому:
if (a=1)
{
if (variable1=1)
{
cout<<"a1=1";
}
else
{
cout<<"error";
}
}
if (a=2)
{
if (variable1=1)
{
cout<<"a2=1"
}
else
{
cout<<"error";
}
}
Проблема : Когда я устанавливаю a равным 2 и variable1 равным 1, он просто напечатает a1=1, а не a2=1. Как я могу это исправить? Извините, если в этом посте есть ошибки или плохой английский. Надеюсь, кто-нибудь ответит...
хорошо подожди дай мне сделать это
@Галик, а как насчет < или > ??
Они в порядке. Ваша ссылка C++ должна объяснять разницу между =(назначение) и ==(сравнение).
@Galik, но когда я добавляю такой оператор if и хочу, чтобы он был < или >, он просто дает ту же ошибку ... так что вы можете мне помочь с этим?
У меня работают и <, и >. Я думаю, вам, возможно, придется более конкретно указать, что в них не работает.





Вы используете оператор присваивания (=) вместо оператора сравнения (==). Оператор присваивания всегда будет возвращать истину, если присваивание выполнено успешно, поэтому он идет в первом операторе if.
Чтобы решить эту проблему, измените = на == в своем коде.
if (a == 1){
}
хорошо, а вы можете дать ответ для оператора < и >?
if (a=1)должно бытьif (a==1)