170 похожих чатов

Привет) Можно ли как-то сделать цикл в препроцессоре, да необычный: Проще

показать пример, что я бы хотел увидеть, хыхах:

#define LOOP(LINE, BEGIN, END) ???

...

LOOP(print("%d", i), 1, 5);

Должно расширяться в:

print("%d", 1);
print("%d", 2);
print("%d", 3);
print("%d", 4);
print("%d", 5);

29 ответов

12 просмотров

в бустовом препросессоре есть такое

А зачем? :(

Анатолий Фролов (anafro)
Ой, а без буста никак? :D

ну можешь руками захардкодить 256 макросов

Alexander Karaev
А зачем? :(

Повторяющийся код на ассемблере сгенить автоматически(

Анатолий Фролов (anafro)
Повторяющийся код на ассемблере сгенить автоматиче...

Расскажи подробнее, пожалуйста. Скорее всего мы предложим альтернативу.

Анатолий Фролов (anafro)
Ахаха, помру

Потом помрёшь ещё раз когда надо будет больше 256

Vlad Doc
Потом помрёшь ещё раз когда надо будет больше 256

...пока не додумается написать пятистрочный скрипт на петоне

Анатолий Фролов (anafro)
Повторяющийся код на ассемблере сгенить автоматиче...

Ты уверен, что функции не переизобретаешь с циклами?

Alexander Karaev
Расскажи подробнее, пожалуйста. Скорее всего мы пр...

Окей) В общем, есть 2 матрицы 4 х 4, нужно их сложить

Alexander Karaev
На ассемблере?

Если так, то причем тут плюсы непонятно и макросы

Alexander Karaev
На ассемблере?

int a[4][4], b[4][4]; __asm { // складывай) }

Анатолий Фролов (anafro)
int a[4][4], b[4][4]; __asm { // складывай) }

Зачем складывать на ассемблере? Чтобы перехитрить оптимизитор и получилось медленнее? И чтобы получить непортабельный код?

Егор (Дима)
лабы же

Вряд ли лабы. Я помню anafro по его проекту "сделать джаву на си плюс плюс"

Sarevok
Что простите?

Можешь историю помотать, если хочешь

Sarevok
Что простите?

https://github.com/anafro/cosmodrome

Alexander Karaev
https://github.com/anafro/cosmodrome

Надо это в Хелену встроить

Слава
Надо это в Хелену встроить

рой от слова "джава" в обморок упадёт

Если крестовые варианты все еще принимаются - подобное можно с использованием компилятора делать (fold-expressions), а не препроцессора. Если нет - Вам сюда.

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Ребят в СИ можно реализовать ООП?
Николай
33
Вот еще странный косяк, подскажите как бороться. Я git clone сделал себе всего embassy и примеры там запускаю. Всё хорошо. Но вот решил в cargo.toml зависимости не как в приме...
Lukutin R2AJP
2
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Карта сайта