- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
Имеем приблизительно такой код
#define XXX(n) ar[n]=s._field_##n;
XXX(01);
XXX(02);
XXX(03);
XXX(04);
XXX(05);
XXX(06);
XXX(07);
XXX(08);
Естесвенно при при компиляции получаем ошибку, т.к. 08 это неправильная восмеричная константа. Обойти можно так
#define XXX(n) ar[1##n-100]=s._field_##n;
Но как-то это некрасиво. Может есть более красивый подход?
j123123 24.07.2016 04:01 # +12
j123123 24.07.2016 04:01 # +13
codemonkey 24.07.2016 16:48 # +13
bormand 24.07.2016 16:57 # +13
codemonkey 24.07.2016 18:53 # +13
j123123 24.07.2016 04:05 # +11
bormand 24.07.2016 08:56 # +11
Ну вот он один фиг генерит хедер из текстового файлика. Может проще тем же генератором и эту сишную функцию сгенерить?
З.Ы. Или одноимённые поля сразу сворачивать в массив, во время генерации хедера (hui01, hui02, hui03 -> hui[3]). Я не думаю, что есть кейсы, где DigitalInput[3] будет смотреться хуже чем DigitalInput03 (разве что если они не по порядку пронумерованы).
j123123 24.07.2016 09:25 # +14
CHayT 24.07.2016 17:28 # +15
j123123 24.07.2016 18:18 # +13
(кстати это не я туда это добавил)
guest 26.07.2016 16:52 # +12
1024-- 24.07.2016 09:41 # +13
Elvenfighter 24.07.2016 12:17 # +14
bormand 24.07.2016 12:18 # +12
1024-- 24.07.2016 13:09 # +12
gost 24.07.2016 16:15 # +11
https://ideone.com/zLJFyb
На C++ это легко пилится в компайл-тайме, а вот как сишным препроцессором так же сделать - хз...
1024-- 24.07.2016 16:17 # +10
bormand 24.07.2016 16:26 # +11
gost 24.07.2016 17:57 # +10
j123123 24.07.2016 18:11 # +11
gost 24.07.2016 18:57 # +9
https://ideone.com/GWp3OP
Dummy00001 24.07.2016 18:55 # +12
да. сделать из кривого массива (s._field_##n), нормальный массив, и не страдать х-ней.
dm_fomenok 24.07.2016 21:09 # +8
inkanus-gray 24.07.2016 22:24 # +9
3_14dar 24.07.2016 22:26 # +9
inkanus-gray 24.07.2016 22:27 # +9
1024-- 24.07.2016 22:30 # +9
Кстати, Пи некогда говорил, что можно и от гостя, и пост со своим номером запилить.
А я ещё где-то постил скрипт для автоматического создания таких комментариев на основе Пи-теории.
P. S. http://govnokod.ru/19807#comment321479
3_14dar 24.07.2016 23:49 # +9
1024-- 25.07.2016 00:02 # +10
Вот с говнокодами - проблема есть. Там, хоть и на практике реально сделать, но в общем случае математически невозможно без перебора диапазона типа айдишника поста запостить ГК с его номером.
На ГК есть 4 варианта ГК - существующие, заминусованные, удалённые и несуществующие. Причём удалённые выглядят так же, как несуществующие. Заминусованные говнокоды заставляют не доверять главной и в общем случае перебирать все посты, возможен бинарный поиск. Удалённые говнокоды нарушают бинарный поиск, т.к. граница "сущесвующий-несуществующий" стирается, нужен полный перебор.
Нужно постить либо во время, когда давно не было удалённых постов, либо быстро создавать два поста, один из них быстро заминусовывать, чтобы он не появился ни в стоке, ни на главной не задержался.
3_14dar 25.07.2016 00:06 # +9
С гк тоже в чем проблема? Постишь первый, смотришь номер, быстро постишь второй.
1024-- 25.07.2016 00:11 # +10
Проблему с номером ГК описал. Если действовать быстро и без записи, можно получить номер за O(N) запросов, за O(logN) в нормальное время и за O(1) в добровремя.
3_14dar 25.07.2016 00:26 # +9
inkanus-gray 25.07.2016 00:21 # +9
3_14dar 25.07.2016 00:26 # +9
1024-- 25.07.2016 00:31 # +11
▲
▲ ▲
или http://lurkmore.to/images/8/82/3kget_legendary.jpg, за которую никто уважать не будет.
Правда, за номер в посте тоже уважать никто не будет, но хоть не залошат.
inkanus-gray 25.07.2016 01:06 # +10
В теории процесс может оказаться бесконечным.
3_14dar 25.07.2016 01:21 # +9
inkanus-gray 25.07.2016 01:53 # +12
bormand 25.07.2016 18:49 # +9
1024-- 25.07.2016 19:20 # +10
http://imgur.com/Xg1XKWn
bormand 25.07.2016 19:24 # +10
— Нет!
— И в мыслях не было!
— 73 — это двадцать первое простое число, его зеркальное отражение 37 является двенадцатым, чьё отражение 21 является результатом умножения — не упадите — семи и трёх!
Тебе делать нехуй? :)
1024-- 25.07.2016 19:34 # +10
bormand 25.07.2016 21:14 # +8
inkanus-gray 25.07.2016 22:52 # +10
Там Роман обратил внимание на название шрифта «Акбар», а пидар влез с Украиной?
3_14dar 26.07.2016 03:06 # +8