[an error occurred while processing this directive]
По вашему-работает, а по правилам языка Си- нет.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
миниатюрный аудио-видеорекордер mAVR

Отправлено Abc123 17 июля 2002 г. 17:00
В ответ на: Все работает отправлено VML 17 июля 2002 г. 12:29

Действительно, со скобками


char c1,c2;
void main(void)
{
c1?(c2 = 8):(c2 = 5);
}

проходит, но дело в том что по правилам языка Си скобки вовсе не требуются.


Это тем более смешно, что скобки ему (Кейлу) требуются только во второй части после ':'.

Т.е. так проходит:


c1 ? c2 = 8:(c2 = 5);

а так не проходит:


c1 ? c2 = 8: c2 = 5;


Хотя в компиляторе Keil С251 (и всех других, с которыми приходилось иметь дело) все работает как положено - и со скобками и без.


Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru