Просмотр сообщений
Страниц: [1] 2 3 ... 31
1  Установка и настройка / Установка и настройка / Re: QNX и GPT : Августа 05, 2017, 07:51:21 pm
Хорошая мысль. Послал вопрос и туда.
2  Установка и настройка / Установка и настройка / QNX и GPT : Августа 04, 2017, 09:38:55 am
Есть ли способ заставить qnx 6.5 (платформа x86) работать с жестким диском в формате GPT?
3  Разработка / Программирование под QNX / Re: Обработка события Ph_EV_KEY в AppBuilder : Июля 26, 2017, 03:58:37 pm
Функция вызывается при нажатии и при отпускании клавиши. Нужно проверять соответствующие флаги. Странно, что проблема возникла при портировании из qnx4 - там дело обстоит точно так же.
4  Разработка / Программирование под QNX 4.x / Re: очистка текста в PtMultiText : Мая 18, 2017, 09:33:22 pm
Ну это ж надо вставлять явное приведение. Так вредить неинтересно - возни больно много.
5  Разработка / Программирование под QNX 4.x / Re: очистка текста в PtMultiText : Мая 18, 2017, 08:25:50 pm
Если поменять массивы на динамические, компилятор как раз наверняка возмутится.
6  Разработка / Программирование под QNX 4.x / Re: очистка текста в PtMultiText : Мая 18, 2017, 08:04:18 pm
В случае malloc есть явный объект - указатель. Со всеми вытекающими.
Если вы напишете
Код:
char *buffer = malloc (16);
то buffer никак не будет равно &buffer.
А в случае
Код:
char buffer[16];
такое равенство будет. Но не будет объекта типа "указатель".
По крайней мере, компилятор Watcom в QNX 4.25 спокойно кушает оператор
Код:
if (buffer == &buffer) ...
Он выдает только туманное предупреждение "&array may not produce intended result", но результат сравнения при этом true.
Интересно проверить, что будет при арифметических операциях с этим указателем. Но в данной теме это значения не имеет - использование &buffer2 вместо buffer2 в обращении к функции ошибкой никоим образом не является.
7  Разработка / Программирование под QNX 4.x / Re: очистка текста в PtMultiText : Мая 18, 2017, 07:39:58 pm
1. В Си нет new.
2. Имя массива есть ссылка на первый элемент, но не объект типа "указатель". Такой объект в данном случае не создается.
8  Разработка / Программирование под QNX 4.x / Re: очистка текста в PtMultiText : Мая 18, 2017, 07:14:56 pm
Причин вы можете не видеть, но в C (не C++) это действительно так.
9  Разработка / Программирование под QNX 4.x / Re: очистка текста в PtMultiText : Мая 18, 2017, 06:03:09 pm
Попробуйте поиграть с ресурсом Pt_ARG_TEXT_STRING. С его помощью можно и очистить виджет (через PtSetResources), и получить указатель на текст (через PtGetResources). Не знаю, правда, что выдаст PtGetResources в случае наличия нескольких сегментов текста с разным форматированием, но, скорее всего, это предусмотрено. В общем, надо пробовать.
Что касается длины текста, то она складывается из длины всех сегментов, которые вы туда пишете, и больше ни из чего (если, конечно, у вас не предусмотрено редактирование текста пользователем). Следует только различать длину текста в байтах и в символах - в кодировке UTF это не одно и то же.
10  Разработка / Программирование под QNX 4.x / Re: очистка текста в PtMultiText : Мая 18, 2017, 08:18:02 am
А кто такой у вас "buffer2" ? Если это имя массива, то выражение "memset( &buffer2,0,sizeof(buffer2));" пытается обнулить указатель на массив. Иногда такое тоже нужно, но тут вы, скорее всего, имели в виду совсем другое ;-) .

Это неверно - в C buffer2 и &buffer2 в данном случае абсолютно эквивалентны.

Код:
Код:
memset(&buffer2,0,sizeof(buffer2));
PtTextModifyText(MTex1,0,sizeof(buffer2),-1,buffer2,sizeof(buffer2)); // очистка виджета

А каков размер массива buffer2? В вашем варианте он должен быть заведомо больше длины очищаемого текста.
Но вообще-то массив buffer2 здесь вовсе не обязателен. Достаточно задать третий параметр PtTextModifyText() заведомо бОльшим, чем длина текста, а последние два параметра - NULL, 0.
11  Установка и настройка / Установка и настройка / Re: установка QNX : Мая 02, 2017, 06:12:11 pm
Мне кажется, что вы немного не о том. Под нативными средствами разработки имеется в виду именно инструментальная машина под qnx. Если вы хотите иметь инструментальные средства на целевой машине, естественно, они сами там не появятся - их надо туда установить.
12  Установка и настройка / Установка и настройка / Re: установка QNX : Мая 02, 2017, 04:02:23 pm
Просто положить на target компилятор и прочее из комплекта, установленного в другю ось я не могу.
Просто положить - конечно, не можете. Но речь-то шла не об этом, а об отсутствии нативных средств вообще.
И конечно, брать эти нативные средства надо с установочного диска - откуда же еще?
13  Установка и настройка / Установка и настройка / Re: установка QNX : Мая 02, 2017, 12:42:44 pm
А с чего утилитам быть в target?
Вот, пожалуйста:
Код:
/usr/qnx650/host/qnx6/x86/usr/bin/make
/usr/qnx650/host/qnx6/x86/usr/bin/gcc
14  Установка и настройка / Установка и настройка / Re: установка QNX : Апреля 30, 2017, 10:01:27 pm
Я ставил с фирменного образа DVD, есть make и gcc 4.4.2. Естественно, в процессе установки надо выбрать соответствующие опции.
15  Установка и настройка / Установка и настройка / Re: установка QNX : Апреля 30, 2017, 05:56:17 pm
Ну, и что Вы предлагаете потом человеку с ней (шестёркой) делать? Начиная с 6.4 (вроде) больше нет найтивной среды разработки. Даже консольного компилятора нет.
Нет только Eclipse. Консольный компилятор и PhAB есть еще и в 6.5.
Страниц: [1] 2 3 ... 31