Size: a a a

2021 February 12

D

Danya in pro.cxx
В magic_enum кажется не надо енум в макросы оборачивать
источник

KO

Konstantin Osipov in pro.cxx
да, не надо, действительно, интересно как они это делают
источник

D

Danya in pro.cxx
Konstantin Osipov
да, не надо, действительно, интересно как они это делают
*Магия*
источник

ПК

Побитый Кирпич... in pro.cxx
Konstantin Osipov
да, не надо, действительно, интересно как они это делают
Через рефлексию
источник

ПК

Побитый Кирпич... in pro.cxx
Вернее то, что предоставляет компилятор уже щас
источник

D

Danya in pro.cxx
Побитый Кирпич
Вернее то, что предоставляет компилятор уже щас
То есть там на интринсиках?
источник

ПК

Побитый Кирпич... in pro.cxx
Ну и там restrictions жёсткие, особенно для msvc
источник

ПК

Побитый Кирпич... in pro.cxx
Danya
То есть там на интринсиках?
Не, я про PRETTY_FUNCTION и аналоги :)
источник

D

Danya in pro.cxx
Побитый Кирпич
Не, я про PRETTY_FUNCTION и аналоги :)
Ааа понял
источник
2021 February 13

П

Пашечка in pro.cxx
В supapro флудят ниочём, потому спрошу здесь, если никто не против
источник

П

Пашечка in pro.cxx
Переслано от Пашечка
Помогите разрешить трабл:
char fmt[] = "%dю%d";
char str[] = "20ю15";
int one = 0;
int two = 0;
sscanf(str, fmt, &one, &two);
В дебаге читает отлично, в релизе - читает только первое число. В качестве разделителя цифр можно использовать не только кириллицу, но и любой символ из расширенной ASCII таблицы.
Исходники в кодировке cp1251. MS VS 19 с тулсетом 141.

Встречал кто-нибудь такое?
источник

AE

Alexander E. in pro.cxx
я бы лично не рассчитывал на страницы типа cp1251 -- что код будет надежный...  но вот в вашем случае с ходу не скажу, но кажется, что тогда в debug и в release retval от sscanf должен отличаться и кажется, что "в какую сторону он отличается" - и есть полответа.  да и отладка, чтобы понять, что происходит на release, кажется дешевой
источник

ЮП

Юрий Першин... in pro.cxx
Пашечка
В supapro флудят ниочём, потому спрошу здесь, если никто не против
Смотрите на уровне ассемблера, что происходит. У меня оптимизатор с разными настройками и в описанной Вами конфигурации не додумывается до такого. Другими словами, Вашу ситуацию пробую, но не могу  воспроизвести. Возможно, как-то влияет настройка ОС по символам для неюникодных программ.
источник

П

Пашечка in pro.cxx
Юрий Першин
Смотрите на уровне ассемблера, что происходит. У меня оптимизатор с разными настройками и в описанной Вами конфигурации не додумывается до такого. Другими словами, Вашу ситуацию пробую, но не могу  воспроизвести. Возможно, как-то влияет настройка ОС по символам для неюникодных программ.
понял, спасибо, покопаем дальше. Вопрос: а среда и используемый тулсет у вас те же?

Я просто сейчас уже не уверен, коллег в субботу вечером будить не хочу, но кажется при сборке с vc120 у нас такой проблемы не было.
источник

AE

Alexander E. in pro.cxx
:D
источник

ЮП

Юрий Першин... in pro.cxx
Пашечка
понял, спасибо, покопаем дальше. Вопрос: а среда и используемый тулсет у вас те же?

Я просто сейчас уже не уверен, коллег в субботу вечером будить не хочу, но кажется при сборке с vc120 у нас такой проблемы не было.
и те же пробовал, и другие. Наиболее вероятная причина - как-то поработал оптимизатор. Сразу увидите. И возврат проверьте, должна 2 вернуть.
источник

П

Пашечка in pro.cxx
Alexander E.
я бы лично не рассчитывал на страницы типа cp1251 -- что код будет надежный...  но вот в вашем случае с ходу не скажу, но кажется, что тогда в debug и в release retval от sscanf должен отличаться и кажется, что "в какую сторону он отличается" - и есть полответа.  да и отладка, чтобы понять, что происходит на release, кажется дешевой
ну, sscanf под дебагом возвращает 2, под релизом - 1, что соответствует количеству записанных переменных... Или я не понял вопроса?
источник

В

Влад in pro.cxx
Всем привет, может кто-то подсказать как сделать это рабочим?)
https://ideone.com/3VqFwW
(тут оно не скомпилится, версия плюсов другая)
источник

ЮП

Юрий Першин... in pro.cxx
Пашечка
ну, sscanf под дебагом возвращает 2, под релизом - 1, что соответствует количеству записанных переменных... Или я не понял вопроса?
Все правильно. Смотрите теперь память, которая уходит в строковых параметрах.
источник

ЮП

Юрий Першин... in pro.cxx
Пашечка
ну, sscanf под дебагом возвращает 2, под релизом - 1, что соответствует количеству записанных переменных... Или я не понял вопроса?
источник