dead_harms » Ср дек 21, 2005 13:41
dybra писал(а):falcon писал(а):for (x=xnach; x<=xend; x+=dx)
{
if(a<0 ||c!=0)
f=a*x*x+b*x+c;
else if (a>0||c=0)
Компилятор тугался на с=0, пришлось ставить с==0. Почему? Есть какая разница?
= - это операция присваивания
== - это операция сравнения
То есть в данном примере была попытка внутри условия присвоить значение с равным нулю, а не сравнить его с ним.
Компилятор на такие вещи не ругается, а просто предупреждает,
потому что эта попытка, как вы выразились - на самом деле нормальный приём, нередко применяющийся,
просто надо быть внимательнее. И ещё - по поводу версий С++ - выражайтесь конкретнее, потому что С++ - это не билдер, сами это
прекрасно знаете.
[quote="dybra"][quote="falcon"][color=green]for (x=xnach; x<=xend; x+=dx)
{
if(a<0 ||c!=0)
f=a*x*x+b*x+c;
else if (a>0||c=0)
Компилятор тугался на с=0, пришлось ставить с==0. Почему? Есть какая разница?[/color][/quote]
= - это операция присваивания
== - это операция сравнения
То есть в данном примере была попытка внутри условия присвоить значение с равным нулю, а не сравнить его с ним.[/quote]
Компилятор на такие вещи не ругается, а просто предупреждает,
потому что эта попытка, как вы выразились - на самом деле нормальный приём, нередко применяющийся,
просто надо быть внимательнее. И ещё - по поводу версий С++ - выражайтесь конкретнее, потому что С++ - это не билдер, сами это
прекрасно знаете.