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

Хммм, в C нет strict aliasing? В плюсах же например

так низзя:

float Q_rsqrt( float number )
{
long i;
float x2, y;
const float threehalfs = 1.5F;

x2 = number * 0.5F;
y = number;
i = * ( long * ) &y; // evil floating point bit level hacking
i = 0x5f3759df - ( i >> 1 ); // what the fuck?
y = * ( float * ) &i; //вот про это
...
`

17 ответов

15 просмотров

в С тоже так нельзя...

Здесь есть корректная реализация с точки зрения современного С

Alexander-N Автор вопроса
🐈
Здесь есть корректная реализация с точки зрения со...

Как корректная. Нельзя же вроде писать в union int, а читать float?

Sergey Skvortsov
В C можно, в C++ нельзя

А если совместить Си и С++, то так можно?, функцию пометить как extern "C" и там union запилить, и эту функцию встроить в плюсы, так можно?

Deathwish
А если совместить Си и С++, то так можно?, функцию...

extern "C" не переключает язык, это исключительно про linkage

Sergey Skvortsov
extern "C" не переключает язык, это исключительно ...

Но в стандарте говорится, что функции помеченные как extern "C", являются Си функциями

Alexander N
Как корректная. Нельзя же вроде писать в union int...

По-моему это в плюсах нельзя, а в си можно

🐈
По-моему это в плюсах нельзя, а в си можно

Нельзя и там и там. Просто Сшникам плевать

Ilya Zviagin
Да ладно...

https://en.cppreference.com/w/c/language/union If the member used to access the contents of a union is not the same as the member last used to store a value, the object representation of the value that was stored is reinterpreted as an object representation of the new type (this is known as type punning).

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта