Страница 1 из 1

Добавлено: 14 ноя 2007, 08:10
wwm
Доброго времени суток!

В Си-блоке не могу присвоить строку переменной типа STR16.

regim="Вентиляция";
------------------^
"bukmainc.c",170 Error[130]: Incompatible operands of '=' operator


Подскажите в чем ошибка?

Добавлено: 16 ноя 2007, 10:42
wwm
Никакие Си-шные "кракозябрики" не помогают!

regim={"Вентиляция";}
------^
"bukmainc.c",243 Error[98]: Primary expression expected

Добавлено: 16 ноя 2007, 15:07
Равиль
STR16 объявлена в DevLib.h как что-то вроде struct {char p[17];};

Добавлено: 17 ноя 2007, 15:21
wwm
Прикольно! А можно как что-то вроде конкретного примера?
И через char пробовал и всяко! Ничего не помогает!
Нужно выводить множество сообщений на BoxPult (динамически, в верхнюю и нижнюю строку пульта). А DEP-овских кубиков можно положить только 512 символов (примерно, как понял)
{/*BUKmainC*/0,0,0,0,{""},{"Вентиляция"},{"разгон дымососа"},{""},{"Закрытие МЭО"},{"газ, возд, разр."},{"Идет"},{"загрузка"},{"Не закрыта"},{"заслонка газа"},{"заслонка воздуха"},{"шибер дымососа"},{"Не закрыт"},{"разгон вентелят."},{"БК дымососа"},{"Не замкнут"},{"БК вентилятора"},FALSE,{"Уст. заслонок"},{"Р воздуха"},{"меньше MIN"},{"Р разрежения"},{"Котел остановлен"},{"Пуск котла - F1"},{"Контроль"},{"герметичности"},{"Прогрев"},{"Работа"},{"Авария"},{"основной цикл"},{"оператором"},{"общекотельного"}
^
"libini.c",219 Error[5]: Too long source line (max is 512 characters); truncated

А нужно вывести лишь в две переменных, когда это нужно, то что требуется.

Добавлено: 17 ноя 2007, 16:14
wwm
В общем помогите, плиз, а то мы больше по Паскалю...

Добавлено: 19 ноя 2007, 18:30
Равиль
А вы попробуйте в разные блоки положить.

Добавлено: 20 ноя 2007, 17:36
wwm
Так и делаю. Но очень неудобно. Куча блоков.

STR16 ведут себя как константы.
Присвоить им значение в коде можно только один раз?

STR16 a = {"12345"}; - здесь все четко.

dep_ConPutStr(&a,false); - здесь тоже! (строка на пульте)

a = {"1";} - а здесь что случилось?
----^
"qqc.c",11 Error[98]: Primary expression expected

Первичное ожидаемое выражение? Что ему не нравится (компилятору)?

Добавлено: 20 ноя 2007, 18:02
Равиль
вместо a = {"1"} нужно
strcpy(a.p,"1");

Добавлено: 21 ноя 2007, 07:40
wwm
Так все работает!
БОЛЬШОЕ СПАСИБО!!!

Добавлено: 18 авг 2020, 16:37
Klonnis
Спасибо!