Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
Victor Charlie
14 / 14 / 0
Регистрация: 10.05.2013
Сообщений: 68
1

Как можно интерпретировать строку if (a = !B)

23.05.2013, 02:03. Просмотров 559. Ответов 3
Метки нет (Все метки)

Доброго времени суток, подскажите новичку, как можно интерпретировать строку if (a=!b) из:

C++
1
2
3
4
5
6
  
int a=7, b=0;
  if (a=!b)
  printf ("%d", a+11);
  else
    printf ("%d", a+24);
Программа выводит ответ:12, не могу понять почему.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.05.2013, 02:03
Ответы с готовыми решениями:

Как интерпретировать восклицательный знак?
Два маленьких вопроса по поводу логики циклов и функций. Прошу прощения за ламерские вопросы, но...

Как можно заполнить строку поэлементно?
Помогите пожалуйста, как можно заполнить строку поэлеметно?

Проверить, можно ли из букв, входящих в строку А, составить строку В
Даны две строки А и В. Составьте программу, проверяющую, можно ли из букв, входящих в А, составить...

Интерпретировать выражение
Помогите пожалуйста решить 2 задачки. 1. Интерпретировать выражение: double *(*my_object ) ();...

Как можно интерпретировать выражение, чтобы это было предикатом?
Помогите пожалуйста разобраться, дано выражение: 1+{\tan}^2 x сказано что это предикат, как это...

3
OhMyGodSoLong
~ Эврика! ~
1248 / 997 / 74
Регистрация: 24.07.2012
Сообщений: 2,002
23.05.2013, 02:17 2
if (a=!b) <=> if (a = !b) <=> взять логическое отрицание b (!b), присвоить его a, и если это значение не равно нулю, то...

Логическое отрицание нуля (значения b на тот момент) — это единица. Именно она присваивается a. Именно из-за неё выбирается первая ветка. И именно поэтому выводится 1 + 11 = 12.
1
easybudda
Модератор
Эксперт CЭксперт С++
10208 / 6107 / 1536
Регистрация: 25.07.2009
Сообщений: 11,607
23.05.2013, 02:46 3
Кэп подсказывает, что подразумевалось
C
1
if ( a != b )
то биш если а не равно б, вывести значение а + 11, иначе вывести а + 24.
Если же Кэп ошибся, и действительно условие
C
1
if ( a = !b )
то при любых значениях а будет выводиться 12 при б равном нулю или 24 при б отличном от нуля, а это странно...
1
Victor Charlie
14 / 14 / 0
Регистрация: 10.05.2013
Сообщений: 68
23.05.2013, 02:53  [ТС] 4
Кэп ошибся

Благодаря вам разобрался, большое спасибо за ответы, друзья!Особенно господину OhMyGodSoLong
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.05.2013, 02:53

Интерпретировать строку - двоичную запись float
Здравствуйте! Есть задача, получив на входе строку вида &quot;10111111001010000000000000000000&quot;...

Перевести строку в цвет, интерпретировать форматы RGB -> BGR
Перевожу строку в цвет и закрашиваю метку, но красное и синее значение цвета поменялись местами. К...

Как интерпретировать файл в объект
Всем привет. Ребят, подскажите плз, с центрального банка хочу забрать курс валют на разные даты,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

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