|
1 / 1 / 0
Регистрация: 28.01.2010
Сообщений: 537
|
||||||
Вопросы о С.18.07.2011, 01:49. Показов 165765. Ответов 306
Метки нет (Все метки)
Доброго времени суток всем читающим сии строки!
В который раз сажусь писать прогу на Си, и вспоминаю про АССЕМБЛЕР... Есть некий код...
Внимание Вопрос. Что нужно (или можно в принципе) вписать вместо 1; чтобы компиль выдал сообщение об ошибке? Или поставте меня на правильные рельсы. Как его можно переписать? Да так, чтобы хоть ругался когда это нужно и как мне это нужно. А то что-то я не могу понять, как это ...
0
|
||||||
| 18.07.2011, 01:49 | |
|
Ответы с готовыми решениями:
306
БД: Контрольные вопросы по дисциплинам, темам и разделам: дисциплина; преподаватели; набор билетов; билет; вопросы к билетам; вопросы; темы вопросов Когда вопросы кончаются, сделать кнопку неактивной и вывести сообщение о том, что вопросы кончились вопросы про вопросы |
|
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,230
|
|
| 15.11.2011, 19:59 | |
|
%u - unsykned INT
%d - sykned INT scanf обязывает соблюдать типы переменных, иначе естественно все затрет. для short надо добавить h, т.е. %hu, %hd. для char вроде %hhd. либо все читать в массив интов, а потом переприсваивать.
0
|
|
|
0 / 0 / 0
Регистрация: 27.01.2010
Сообщений: 619
|
|||
| 15.11.2011, 22:54 | |||
0
|
|||
|
0 / 0 / 0
Регистрация: 14.02.2010
Сообщений: 494
|
|
| 16.11.2011, 00:24 | |
|
в заголовке inttypes.h определены
int8_t, int8_t, int16_t, int16_t, int32_t, int64_t (и их uint версии) для контроллеров (и вообще для любых программ, где важно точно знать размер типа) рекомендую использовать именно их: uint16_t - беззнаковая 16-разрядная и не надо вспоминать, во что обернется long long int
0
|
|
|
0 / 0 / 0
Регистрация: 06.04.2010
Сообщений: 1,088
|
|
| 30.11.2011, 22:49 | |
|
Подскажите, как средствами Си зациклить такую вещь?
А { // вход в подпрограмму key_cod = KEY_BOARD (); // опрос клавиатуры В } // конец подпрограммы Т.е. нужно, чтобы программа вертелась между А и В, пока key_cod не станет равным, скажем, 125 ( коду нажатия определенной кнопки). Весь день читал хваленных Кернигана и Ричи, понятного ответа не нашел.
0
|
|
|
0 / 0 / 0
Регистрация: 12.07.2011
Сообщений: 2
|
|||||||
| 30.11.2011, 22:52 | |||||||
0
|
|||||||
|
0 / 0 / 0
Регистрация: 06.04.2010
Сообщений: 1,088
|
|||||||
| 30.11.2011, 23:04 | |||||||
0
|
|||||||
|
0 / 0 / 0
Регистрация: 12.07.2011
Сообщений: 2
|
||||||
| 30.11.2011, 23:07 | ||||||
|
Я имел в виду, что цикл типа while(i == 1) {.......} не выполнится не разу, если i сразу не равна 1.
А цикл вида do{........}while(i==1) выполнится один раз до проверки обязательно. Цикл while выполняется пока условие истинно, значения сравниваются каждый раз и цикл или повторяется или завершается. Если нужно по равенству,то цикл (i != 125) будет выполняться пока i не станет == 125.
0
|
||||||
|
0 / 0 / 0
Регистрация: 06.04.2010
Сообщений: 1,088
|
|
| 30.11.2011, 23:34 | |
|
Завтра попробую do while.
0
|
|
|
0 / 0 / 0
Регистрация: 28.02.2011
Сообщений: 461
|
|
| 30.11.2011, 23:51 | |
|
Можно так:
for(key_cod=0;key_cod!=125;key_cod=KEYBO AR());
0
|
|
|
0 / 0 / 0
Регистрация: 06.04.2010
Сообщений: 1,088
|
||
| 01.12.2011, 00:26 | ||
Блин, ну вот нет подобных понятных примеров ни в одной книге по Си.
0
|
||
|
0 / 0 / 0
Регистрация: 02.02.2010
Сообщений: 1,142
|
|
| 01.12.2011, 07:33 | |
|
На википедии куча примеров, как использовать циклы:
http://en.wikipedia.org/wiki/While_loop http://en.wikipedia.org/wiki/Do_while_loop
0
|
|
|
0 / 0 / 0
Регистрация: 28.02.2011
Сообщений: 461
|
||||||||||||||
| 01.12.2011, 12:09 | ||||||||||||||
0
|
||||||||||||||
|
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,230
|
|
| 01.12.2011, 16:54 | |
|
while ( (keycod=KEYBOAR()) != 125 );
0
|
|
|
0 / 0 / 0
Регистрация: 12.07.2011
Сообщений: 2
|
|
| 01.12.2011, 17:00 | |
|
Мне while тоже как-то понятней кажется. Делать такие циклы через for мне глаз режет.
0
|
|
|
0 / 0 / 0
Регистрация: 02.11.2004
Сообщений: 1,112
|
||||||
| 10.01.2012, 12:20 | ||||||
|
такой вопрос:
правильно ли будет выглядеть условие на проверку выбранного бита байтовой переменной?
а то чета не могу до конца вкурить тонкости битовых операций. поднятие/опускание ног портов понял, а как ветвиться на основании отдельных битов, так и не понял
0
|
||||||
|
4 / 4 / 0
Регистрация: 12.03.2013
Сообщений: 24
|
|||||||
| 10.01.2012, 12:51 | |||||||
{ } в С вроде как любой ненулевой результат = trui. так что можно написать так:
0
|
|||||||
|
0 / 0 / 0
Регистрация: 12.07.2011
Сообщений: 2
|
|
| 10.01.2012, 12:58 | |
|
Да, ==1 не нужен.
И если bitNum переменная, то 1<<bitNum будет вычисляться при каждом сравнении. Т.ч. если ее значение не меняется, то лучше использовать константу.
0
|
|
|
0 / 0 / 0
Регистрация: 02.11.2004
Сообщений: 1,112
|
|
| 10.01.2012, 12:59 | |
|
значение bitNum как раз меняется, так что тут всё ок
а вот насчёт любой ненулевой результат = trui не знал, спасибо. это прям всё ставит на места
0
|
|
|
0 / 0 / 0
Регистрация: 12.07.2011
Сообщений: 2
|
|
| 10.01.2012, 13:13 | |
|
Что <>0 является истинной, не работает в C.NET. Там необходимо явно указывать условия.
0
|
|
|
0 / 0 / 0
Регистрация: 02.11.2004
Сообщений: 1,112
|
|
| 10.01.2012, 15:55 | |
|
вот-вот. впервые только в Си с этим и столкнулся.
ни в JS, ни в VB, ни в TSQL, которые я, считаю, знаю неплохо, такой фигни нет
0
|
|
| 10.01.2012, 15:55 | |
|
Наука не отвечает на вопросы "почему". Наука отвечает на вопросы "как, сколько" Вопросы Вопросы по TP Вопросы по C++ Вопросы по Си Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было
ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась.
Первый вариант. . .
|
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2.
Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
|
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет.
Но обычно это 50 лет и более.
Наверное, закисление почвы происходит сезонно в средней. . .
|
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
|
|
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS
Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
|
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи.
Через несколько переработок от PHP кода к C89 (надеюсь, 89).
Но довольно запутанно получилось. Код для Linux.
Но если убрать time и то, что с ним. . .
|
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки
Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
|
rest api anylogic - выполнение модели на своём русском сайте
anaschu 02.07.2026
Как подружиться с AnyLogic Cloud API, победить провайдеров и развернуться Java-бэкенд в Docker на бесплатном хостинге: Двухдневный лог борьбы
Всем привет! Хочу поделиться свежим (и довольно. . .
|