Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Zetronik
0 / 0 / 0
Регистрация: 07.01.2010
Сообщений: 8
#1

if (x=a) и if (x==a)

21.01.2010, 17:42. Просмотров 647. Ответов 10
Метки нет (Все метки)

В чем разница?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
insideone
Модератор
Автор FAQ
3658 / 938 / 112
Регистрация: 10.01.2010
Сообщений: 2,523
21.01.2010, 17:44 #2
После x = a, в переменную x занесутся данные из a
После x == a значения переменных не изменятся, однако вернётся результат их сравнения true\false

Итого:
= операция присвоения
== операция сравнивания
0
patriot2008
72 / 72 / 10
Регистрация: 04.12.2008
Сообщений: 460
21.01.2010, 17:44 #3
if (x=a) - присваивание переменной х значения а
if (x==a) - сравнение значений переменных х и а
0
OVERPOWER8
19 / 19 / 2
Регистрация: 29.11.2009
Сообщений: 224
21.01.2010, 17:47 #4
if(x=a) всегда будет верно
if(x==a) будет верно только когда значения обоих переменных равны.
0
valeriikozlov
Эксперт С++
4683 / 2509 / 751
Регистрация: 18.08.2009
Сообщений: 4,550
21.01.2010, 17:55 #5
Цитата Сообщение от OVERPOWER8 Посмотреть сообщение
if(x=a) всегда будет верно
Кроме случая когда переменная a не равна нулю.
0
easybudda
Модератор
Эксперт CЭксперт С++
10051 / 5971 / 1491
Регистрация: 25.07.2009
Сообщений: 11,305
21.01.2010, 18:19 #6
Цитата Сообщение от valeriikozlov Посмотреть сообщение
Цитата:
Сообщение от OVERPOWER8
if(x=a) всегда будет верно
Кроме случая когда переменная a не равна нулю.
То есть наоборот, если а = 0 то и х = 0 и выражение вернёт false...
0
valeriikozlov
Эксперт С++
4683 / 2509 / 751
Регистрация: 18.08.2009
Сообщений: 4,550
21.01.2010, 18:47 #7
easybudda, Вы все усмотрели. Да все правильно, из моей фразы нужно убрать частицу "не". Думал как раз об этом когда писал. Есть отвлекающие факторы...
0
22dr22
6 / 6 / 0
Регистрация: 31.12.2009
Сообщений: 132
21.01.2010, 19:50 #8
ошибся)))
0
Zetronik
0 / 0 / 0
Регистрация: 07.01.2010
Сообщений: 8
21.01.2010, 20:24  [ТС] #9
Спасибо всем кто ответил, все стало ясно.
0
Evg
Эксперт CАвтор FAQ
19275 / 7133 / 527
Регистрация: 30.03.2009
Сообщений: 19,972
Записей в блоге: 30
21.01.2010, 20:32 #10
if (x=a) эквивалентно if ((x=a) != 0), что эквивалентно if (x=a, x!=0) что эквивалентно x=a; if (x != 0)
1
OVERPOWER8
19 / 19 / 2
Регистрация: 29.11.2009
Сообщений: 224
22.01.2010, 00:20 #11
Цитата Сообщение от OVERPOWER8 Посмотреть сообщение
if(x=a) всегда будет верно (кроме случая a=0)
if(x==a) будет верно только когда значения обоих переменных равны.
Немного ошибся, подправил.
0
22.01.2010, 00:20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru