Например TDA7294

Форум РадиоКот • Просмотр темы - PureBasic для PC
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Пн ноя 17, 2025 08:34:44

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 128 ]     ... , , , , 7
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: PureBasic
СообщениеДобавлено: Чт май 29, 2014 20:10:07 
Друг Кота

Карма: 13
Рейтинг сообщений: 84
Зарегистрирован: Чт сен 20, 2007 14:08:00
Сообщений: 13796
Рейтинг сообщения: 0
на этот раз я решил переделать все по уму, а то достиг уже барьера тупости из-за простоты глобальных переменных
теперь я хочу работать со структурой данных, которая хранится в ини файле и должна быть доступна из разных мест

вот только синтаксис бейсика сносит крышу

вот пример
Код:
Define Point1.Point, Point2. Point
  *CurrentPoint.Point = @Point1  ; Pointer declaration, associated to a structure and initialized with Point1's address
  *CurrentPoint \x = 10          ; Assign value 10 to Point1\x
  *CurrentPoint.Point = @Point2  ; move to Point2's address
  *CurrentPoint \x = 20          ; Assign value 20 to Point2\x
  Debug Point1\x
  Debug Point2\x

Define Point1.Point, Point2. Point вот эта строчка - этот point тип данных что ли?
тогда зачем звездочка? почему нельзя было сделать типа point1, point2.*
или зачем тогда звездочка *CurrentPoint ?

потом дальше зачем звездочка в *CurrentPoint.Point и через точку опять тип данных?
что за странный камент Pointer declaration, associated to a structure and initialized with Point1's address
а что за структура тут вообще? нигде же не было structure - endstructure

еще раз убеждаюсь, что разработчики си думали головой, прежде чем ввести синтаксис
ничего лучше сишного синтаксиса я еще не видел

напишите мне, как декларировать функцию и передать в нее указатель на структуру config
как потом написать ее и инициализировать внутреннюю переменную myini типа config

у меня мозги уже не варят

_________________
тематические ответы только в форуме, в приват не пишите


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PureBasic
СообщениеДобавлено: Чт май 29, 2014 23:11:06 
Друг Кота
Аватар пользователя

Карма: 1
Рейтинг сообщений: 179
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3382
Рейтинг сообщения: 0
kalobyte писал(а):
Define Point1.Point, Point2. Point вот эта строчка - этот point тип данных что ли?
Это структура из WinAPI винды. http://www.vsokovikov.narod.ru/New_MSDN ... _point.htm

kalobyte писал(а):
тогда зачем звездочка?
Ну как, указатель на структуру же. При этом память под структуру не выделяется.

kalobyte писал(а):
а что за структура тут вообще? нигде же не было structure - endstructure
Откроете окно "Просмотр структур" из меню "Инструменты" и посмотрите сколько структур объявлено по умолчанию. Среди них есть и POINT.

kalobyte писал(а):
напишите мне, как декларировать функцию и передать в нее указатель на структуру configкак потом написать ее и инициализировать внутреннюю переменную myini типа config
Пример отсюда. http://pure-basic.narod.ru/docs/point.html
Код:
Structure Proba
   x.l
   y.l
   Text.s
EndStructure

test.Proba

Procedure Test(*var.Proba)
  *var\x=1
  *var\y=2
  *var\Text="Текст"
EndProcedure

Test(@test) ; Вызываем процедуру и передаём ей указатель на структуру
; Отображаем в отладочном окне данные из структуры
Debug test\x
Debug test\y
Debug test\Text


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PureBasic
СообщениеДобавлено: Пт май 30, 2014 21:51:31 
Друг Кота

Карма: 13
Рейтинг сообщений: 84
Зарегистрирован: Чт сен 20, 2007 14:08:00
Сообщений: 13796
Рейтинг сообщения: 0
:facepalm: спутал point с pointer
а что с доступом к членам структуры через указатель?
*var\y=2 это типа var->x = 2 ?

_________________
тематические ответы только в форуме, в приват не пишите


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PureBasic
СообщениеДобавлено: Вс авг 31, 2014 12:14:56 
Родился
Аватар пользователя

Зарегистрирован: Сб авг 30, 2014 16:55:43
Сообщений: 7
Откуда: Самарская обл.
Рейтинг сообщения: 0
Всегда был неравнодушен к Бейсику. Нахожусь на стадии выбора системы программирования для изучения и применения. С месяц назад открыл для себя PureBasic. Привлек меня тем, что это, во-первых, Бейсик! Во-вторых - проект может состоять всего из одного файла. Сама система программирования легко ставится на комп, ну и другие мелочи. Наверное, это то, что мне надо. К сожалению, справка только на английском. Есть переводы учебников, но они в основном только элементарные вещи охватывают. Сейчас разбираюсь с графикой. Нужна помощь по использованию SetFrameRate(). Объясните, как будет работать следующий кусок кода (схематично опишу). Зададим какое-либо значение:

SetFrameRate(60)
Начало цикла
FlipBuffers()
ClearScreen(RGB(0,255,255))
выводим спрайт
увеличиваем его координату на 1
DisplayTransparentSprite(...)
Конец цикла

Варианты работы:

1) делается первый проход цикла за мизерное время (гораздо меньше 1/60)
начинается второй проход
FlipBuffers должен вывести спрайт на экран, но поскольку время еще не подошло, ждем в этом месте пока истекут 1/60 с, затем продолжаем
выводим спрайт в позиции х+1
...

2) делается первый проход цикла за мизерное время (гораздо меньше 1/60)
начинается второй проход
FlipBuffers должен вывести спрайт на экран, но поскольку время еще не подошло, то спрайт не выводим, а переходим к следующей команде
увеличиваем координату на 1
переходим к третьему проходу
...
по истечении 1/60 с выводим спрайт, но уже не в позиции х+1, в позиции х+k (k- число проходов цикла за 1/60 с)

Или вообще какой-то третий вариант выполнения будет?


Вернуться наверх
 
Эиком - электронные компоненты и радиодетали
Не в сети
 Заголовок сообщения: Re: PureBasic
СообщениеДобавлено: Чт сен 04, 2014 14:38:25 
Друг Кота
Аватар пользователя

Карма: 1
Рейтинг сообщений: 179
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3382
Рейтинг сообщения: 1
Напишите
Код:
SetFrameRate(60)
Начало цикла
 x=ElapsedMilliseconds()
 FlipBuffers()
 Debug ElapsedMilliseconds()-x
 ClearScreen(RGB(0,255,255))
 выводим спрайт
 увеличиваем его координату на 1
 DisplayTransparentSprite(...)
Конец цикла
И посмотрите каков будет результат в зависимости от параметра в SetFrameRate.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PureBasic
СообщениеДобавлено: Чт сен 04, 2014 19:44:54 
Родился
Аватар пользователя

Зарегистрирован: Сб авг 30, 2014 16:55:43
Сообщений: 7
Откуда: Самарская обл.
Рейтинг сообщения: 0
Спасибо большое, Мурик!
Не зря я сюда зашел, на спецфоруме так никто и не ответил мне, до сих пор вопрос висит.

Проверил. Чем больше значение, тем меньше выводимое значение. Значит, программа работает по первому варианту, ждет, пока истечет заданное время.
Еще раз спасибо.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PureBasic для PC
СообщениеДобавлено: Сб фев 27, 2016 09:43:52 
Родился

Зарегистрирован: Сб фев 27, 2016 09:30:27
Сообщений: 1
Рейтинг сообщения: 2
Для начинающих на PureBasic предлагаю собранную мною информацию в интернете и оформленную в в виде PDF, (есть и DOCX).
Может кому либо пригодится, доступно на ссылке https://yadi.sk/i/_Sr4TlTrjzCyf.
Rostik


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PureBasic для PC
СообщениеДобавлено: Пн фев 29, 2016 01:54:30 
Держит паяльник хвостом

Карма: 10
Рейтинг сообщений: 161
Зарегистрирован: Чт апр 03, 2014 23:16:55
Сообщений: 963
Откуда: Россия
Рейтинг сообщения: 0
Спасибо, а в DOCX где можно посмотреть?


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 128 ]     ... , , , , 7

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y