|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
|||||||||||
Как перевести код с языка Си на PureBasic ?21.08.2023, 17:48. Показов 3190. Ответов 38
Метки нет (Все метки)
Здравствуйте ! Есть небольшой код на Си:
Так вот, можно ли переложить код СИ на PureBasic, или сделать Си-вставку ? Если можно, то каким образом ?
0
|
|||||||||||
| 21.08.2023, 17:48 | |
|
Ответы с готовыми решениями:
38
Перевести код с языка с на с++
Перевести код с языка Си в С++ |
|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
||
| 21.08.2023, 20:32 [ТС] | ||
|
0
|
||
|
COM‐пропагандист
|
|||||||
| 21.08.2023, 20:49 | |||||||
0
|
|||||||
|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
||
| 21.08.2023, 21:01 [ТС] | ||
|
Однако, вопрос состоит всё же в том, как можно эти инструкции реализовать в PureBasic-е, минуя долгий 'For' ?
0
|
||
|
3 / 3 / 0
Регистрация: 14.12.2020
Сообщений: 171
|
||
| 21.08.2023, 22:47 | ||
|
Может я ошибаюсь, но тут всё дело в слове register, позволяющем хранить переменные счетчиков в регистре процессора. antro735, заметьте "|or" есть и в С-коде и коде Purebasic, так что скорее всего речь стоит вести не о избавлении от долгого "|or"-а, а о помещении переменных в регистр процессора... если Вам, конечно, инкременация (она же брут, она же перебор) нужна. В противном случае весь код можно заменить на "а=столько-то" - одной строчкой.
Вопрос в том, есть ли у Purebasic аналог С-шной команде register? Если нет тогда можно ли интегрировать код С в код Purebasic? Если и это невозможно, тогда, может быть придется решать данную задачу при помощи ассемблерных вставок.
0
|
||
|
|
||||||||||||||||||
| 22.08.2023, 00:13 | ||||||||||||||||||
0
|
||||||||||||||||||
|
3 / 3 / 0
Регистрация: 14.12.2020
Сообщений: 171
|
||
| 22.08.2023, 01:31 | ||
|
locm, Только-что установил 6-ю версию PB (Очень уж тема заинтересовала) В 5-ой не было оптимизации....
0
|
||
|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
||
| 22.08.2023, 02:25 [ТС] | ||
|
0
|
||
|
1 / 1 / 0
Регистрация: 28.07.2018
Сообщений: 124
|
||
| 22.08.2023, 02:25 [ТС] | ||
|
0
|
||
|
COM‐пропагандист
|
||
| 22.08.2023, 06:08 | ||
|
С другой стороны, оптимизирующий компилятор всегда будет стараться размещать переменные в регистрах, а не в стеке, превращать в константы, удалять как мёртвый код — без всяких подсказок. Поэтому полезность ключевого слова register в настоящее время сомнительна.
0
|
||
|
3 / 3 / 0
Регистрация: 14.12.2020
Сообщений: 171
|
|
| 22.08.2023, 07:34 | |
|
locm, установил 2 версии Pure Basic... PureBasic 6.02 LTS (Windows - x86) и PureBasic 6.02 LTS (Windows - x64)
Компилятора C-backend так и не нашел.... Замабувараев, спасибо буду знать... честно говоря 4000000000 за 17 миллисекунд звучало невероятно...
0
|
|
|
|
||
| 22.08.2023, 11:55 | ||
|
Его нужно добавить в настройках в разделе "Компилятор". Скачайте файл "PureBasic 6.02 Portable.exe" со всем известного трекера. В нем произведены эти настройки.
0
|
||
|
3 / 3 / 0
Регистрация: 14.12.2020
Сообщений: 171
|
|||||||
| 27.09.2023, 20:34 | |||||||
|
locm,
Меня заинтересовал вот какой вопрос...... Вставка вставкой, а как использовать данные полученные в "Си" - вставке, в дальнейшем коде? Пример:
0
|
|||||||
|
|
||||||
| 27.09.2023, 21:11 | ||||||
|
Так оно работать не будет. PB ничего не знает о переменных объявленных во вставке на Си.
0
|
||||||
|
3 / 3 / 0
Регистрация: 14.12.2020
Сообщений: 171
|
|||||||
| 27.09.2023, 22:18 | |||||||
|
locm, немного переписал:
Только вот разобраться бы до конча.... Что конкретно означает "v_" использовать переменную s из pb кода? (верно) А если надо наоборот, т.е, значения полученные в pb коде перенести в С-код?
0
|
|||||||
|
|
||||||||
| 27.09.2023, 22:35 | ||||||||
|
Это префикс для не глобальных переменных чтобы не было конфликта имен.
0
|
||||||||
|
3 / 3 / 0
Регистрация: 14.12.2020
Сообщений: 171
|
|
| 27.09.2023, 23:04 | |
|
0
|
|
|
3 / 3 / 0
Регистрация: 14.12.2020
Сообщений: 171
|
|||||||
| 28.09.2023, 01:25 | |||||||
![]() А как же
0
|
|||||||
| 28.09.2023, 01:25 | |
|
Помогаю со студенческими работами здесь
20
Перевести код с языка С++ в С Нужно перевести код с языка С на С++ Перевести код из языка Pascal в C++ Перевести код с языка С на матлаб Перевести код из языка С++ в язык C# Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия SDL 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual. . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|