Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Zetronik
0 / 0 / 0
Регистрация: 07.01.2010
Сообщений: 8
#1

if (x=a) и if (x==a) - C++

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

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

Итого:
= операция присвоения
== операция сравнивания
0
patriot2008
72 / 72 / 4
Регистрация: 04.12.2008
Сообщений: 463
21.01.2010, 17:44 #3
if (x=a) - присваивание переменной х значения а
if (x==a) - сравнение значений переменных х и а
0
OVERPOWER8
19 / 19 / 1
Регистрация: 29.11.2009
Сообщений: 224
21.01.2010, 17:47 #4
if(x=a) всегда будет верно
if(x==a) будет верно только когда значения обоих переменных равны.
0
valeriikozlov
Эксперт С++
4673 / 2499 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
21.01.2010, 17:55 #5
Цитата Сообщение от OVERPOWER8 Посмотреть сообщение
if(x=a) всегда будет верно
Кроме случая когда переменная a не равна нулю.
0
easybudda
Модератор
Эксперт CЭксперт С++
9695 / 5645 / 963
Регистрация: 25.07.2009
Сообщений: 10,850
21.01.2010, 18:19 #6
Цитата Сообщение от valeriikozlov Посмотреть сообщение
Цитата:
Сообщение от OVERPOWER8
if(x=a) всегда будет верно
Кроме случая когда переменная a не равна нулю.
То есть наоборот, если а = 0 то и х = 0 и выражение вернёт false...
0
valeriikozlov
Эксперт С++
4673 / 2499 / 321
Регистрация: 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
18259 / 6384 / 440
Регистрация: 30.03.2009
Сообщений: 17,666
Записей в блоге: 28
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 / 1
Регистрация: 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 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru