Различаются между '(! Server [i] .type == - 1)' и '(server [i] .type! = - 1)'Различаются между: a == - 1 и a! = - 1
Сервер представляет собой массив структур, имеющих тип и количество двух членов.
server[0] type:-1 amount: 100
server[1] type: 0 amount: 50
server[2] type: 1 amount: 50
Я хочу рассчитать сумму сумм типа не -1. Я думаю, что эти два кода же
for(int i=0;i<3;i++) {
if(!server[i].type==-1)
total+=server[i].amount;
}
for(int i=0;i<3;i++) {
if(server[i].type!=-1)
total+=server[i].ptime;
}
Но я обнаружил, что первый не work.Can кто-нибудь сказать мне, почему это происходит? Спасибо большое.
'! Server [i] .type == - 1' ~' (! Server [i] .type) == - 1' – Columbo
Отсутствие скобок и отсутствие исследований по предпочтениям оператора является основной причиной. –
Если кто-то «не работает», почему вы думаете, что «коды» одинаковы? Рассматривали ли вы какие-либо исследования в значении символов, которые вы печатаете? –