Size: a a a

2020 April 24

v

vehlwn in pro.cxx
Artöm Bakri Al-Sarmini
Можно == (uintptr_t)(void*)0. Без такого каста вряд ли
Тогда как понимать это предложение https://t.me/ProCxx/377840 (после конвертации (void*)nullptr)?
источник

v

vehlwn in pro.cxx
Хочешь сказать вот это
>The value representation of pointer types is implementation-defined.
void *p = nullptr;
reinterpret_cast<unsigned char*>(&p)
не обязано быть последовательностью нулей?
источник

v

vehlwn in pro.cxx
А конвертировать в uintptr_t их можно безопасно?
источник

AB

Artöm Bakri Al-Sarmini in pro.cxx
vehlwn
Хочешь сказать вот это
>The value representation of pointer types is implementation-defined.
void *p = nullptr;
reinterpret_cast<unsigned char*>(&p)
не обязано быть последовательностью нулей?
Не обязано
источник

AB

Artöm Bakri Al-Sarmini in pro.cxx
vehlwn
А конвертировать в uintptr_t их можно безопасно?
Да, и обратно можно
источник

AB

Artöm Bakri Al-Sarmini in pro.cxx
Artöm Bakri Al-Sarmini
Не обязано
Обсуждали миллион раз. Ты тоже был
источник

AB

Artöm Bakri Al-Sarmini in pro.cxx
vehlwn
Хочешь сказать вот это
>The value representation of pointer types is implementation-defined.
void *p = nullptr;
reinterpret_cast<unsigned char*>(&p)
не обязано быть последовательностью нулей?
& там случайно?
источник

v

vehlwn in pro.cxx
Artöm Bakri Al-Sarmini
& там случайно?
Это валуев презентация.
источник

v

vehlwn in pro.cxx
Artöm Bakri Al-Sarmini
Обсуждали миллион раз. Ты тоже был
Я не знал, что ошибка в слове "конвертация". Этот процесс превращает указатели, 0 и nullptr в интегралы, которые можно сравнивать друг с другом.
источник
2020 April 25

AP

Andrey Poshtarenko in pro.cxx
Почему ошибка обращения к памяти, хотя память Read Write ? Exception thrown: read access violation.
val was 0xDC6E168000. Хотя до этого 2 раза нормально прочел два других региона с state commit, правда protect read
источник

AP

Andrey Poshtarenko in pro.cxx
Наверное это связано с описанием про read write в доках майкрософт, но я не собираюсь исполнять этот код. Почему тогда ошибка?
Хотя такое же описание у ридонли, но ридонли спокойно читается
источник

v

vehlwn in pro.cxx
В 6.7.5.4.3 [basic.stc.dynamic.safety] написано про safely-derived pointer to an object with dynamic storage duration и  integer representation of a safely-derived pointer и что их можно друг в друга реинтерпрет кастовать. Про указатели на статические или автоматические объекты не написано. А реинтерпрет каст вызывает конвертацию по правилам [expr.reinterpret.cast], т.е. impl defined.
A pointer can be explicitly converted to any integral type large enough to hold all **values** of its type. The mapping function is implementation-defined. A value of type std::nullptr_t can be converted to an integral type; the conversion has the same meaning and validity as a conversion of (void*)0 to the integral type.

A value of integral type or enumeration type can be explicitly converted to a pointer. A pointer converted to an integer of sufficient size (if any such exists on the implementation) and back to the same pointer type will have its original **value**; mappings between pointers and integers are otherwise implementation-defined. [Note: Except as described in 6.7.5.4.3, the result of such a conversion will not be a safely-derived pointer value.
Теперь все понятно.

auto n = (std::uintptr_t)(void*)0;
n == (std::uintptr_t)(void*)0; // правильно
n == (std::uintptr_t)0; // неправильно
источник

ЮП

Юрий Першин in pro.cxx
Vyacheslav Olkhovchenkov
мне кажется у тебя нет варианта кроме как тягать размер буфера.
В общем, сделал так: поскольку срабатывание в AppVerifier основано на специальной странице памяти, расположенной вслед за буфером, размер буфера определяю автоматически путем поиска этой страницы.
источник

DS

David Sorokin in pro.cxx
Привет! А кто-нибудь занимается дискретно-событийным моделированием, используя язык С++? Если да, то примерно какого типа задачи решаете? Системы массового обслуживания или моделирование аппаратуры?
источник

A

Alex in pro.cxx
большое спасибо, отличная лекция
источник

ПК

Побитый Кирпич in pro.cxx
Alex
не понимаю, при чём тут корутины?

потоки удобны как уровень абстракции между клиентским кодом и физической реализацией i/o. Захотел - подсунул поток в файл, захотел - в сеть или в буфер в памяти. Это полезная абстракция. Возможность дописать операторы ввода-вывода для своих типов - тоже большой плюс.
Нужны асинхронные стримы на корутинах, без этого пропозал уже устарел
источник

AB

Artöm Bakri Al-Sarmini in pro.cxx
Юрий Першин
В общем, сделал так: поскольку срабатывание в AppVerifier основано на специальной странице памяти, расположенной вслед за буфером, размер буфера определяю автоматически путем поиска этой страницы.
Эпичный костыль
источник

C

Cod mE in pro.cxx
Всем привет. Подскажите как выполнить поиск по всему сайту, если он не проиндексикован в Гугле. Через "site: адрес сайта + слово " не ищет . И через разшырения в Гугл хром тоже не ищет. Какие есть ещё способы. Подскажите кто знает. Спасибо
источник

АК

Александр Караев in pro.cxx
Cod mE
Всем привет. Подскажите как выполнить поиск по всему сайту, если он не проиндексикован в Гугле. Через "site: адрес сайта + слово " не ищет . И через разшырения в Гугл хром тоже не ищет. Какие есть ещё способы. Подскажите кто знает. Спасибо
оффтоп
источник

C

Cod mE in pro.cxx
Это что "оффтоп"? Программа?
источник