реклама на сайте
подробности

 
 
> Помогите разобраться в коде
vadim_rt
сообщение Sep 1 2012, 16:24
Сообщение #1





Группа: Участник
Сообщений: 6
Регистрация: 4-11-07
Пользователь №: 32 033



Есть кусочек кода

tI2C->I2CLK = (u32divider & ~0xFF)? 0xFF:((u32divider & ~0x03)? u32divider: 4);

взят из библиотеки под МК. Собственно вопрос что означает этот код, а конкретно что делает оператор"?" и ":"?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
adnega
сообщение Sep 1 2012, 16:34
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(vadim_rt @ Sep 1 2012, 19:24) *
Есть кусочек кода

tI2C->I2CLK = (u32divider & ~0xFF)? 0xFF:((u32divider & ~0x03)? u32divider: 4);

взят из библиотеки под МК. Собственно вопрос что означает этот код, а конкретно что делает оператор"?" и ":"?


Упрощенная запись оператора if
Код
if(cond) x=val1;
else x=val2;

может быть записано так

x = (cond)? val1 : val2;
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd August 2025 - 02:17
Рейтинг@Mail.ru


Страница сгенерированна за 0.01564 секунд с 7
ELECTRONIX ©2004-2016