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

@Hurrypbabe, ты посмотрел, что я написал? Может, тут есть случай знакового

переполнения, что есть undefined behavior, а это значит, что может произойди всё, что угодно.

31 ответов

35 просмотров

Дошло, спасибо)

Ну я жестко тупил с этого

Нет там никакого UB, и быть не может

Дмитрий-🎮 Автор вопроса
Ilya Zviagin
Нет там никакого UB, и быть не может

Запись числа 192 в знаковый char, у которого наибольшее положительное 127, это не UB?

Ilya Zviagin
u_char - это не char

это 8 бит, этого вполне достаточно. А потом уже явно касти себе на здоровье Ещё же бывает std::byte 👌

Дмитрий 🎮
Запись числа 192 в знаковый char, у которого наибо...

Никто не гарантирует(даже стандарт), что у signed char наибольшее положительное 127

Дмитрий-🎮 Автор вопроса
Ilya Zviagin
а где это ? я не видел такого

https://t.me/supapro/1333494 У него переменная типа char. Знаковость char стандарт не определяет, может быть как signed, так и unsigned. Когда он записывает в эту переменную 0x0F (15), в консоли выведется такое же значение, но когда он записал 0xC0 (192), что больше 127, значение стало выводиться отрицательное.

Дмитрий-🎮 Автор вопроса
Дмитрий-🎮 Автор вопроса
Ilya Zviagin
И какое же ?

В его случае printf("%X", ch); //FFFFFFC0

Дмитрий 🎮
Это к тому, что его размер >= 1 байта?

Нет, к тому, что байт может быть семибитным. Но что в том, что в том случаях sigidness - это лишь абстракция над байтами

Дмитрий 🎮
В его случае printf("%X", ch); //FFFFFFC0

Ну, должно получиться ровно такое же число в 10ой

Aniki Hi$ok@ 🌈 Z 🐀
а на х86/amd64?

А Си/++ есть только на этих архитектурах?

Rekreker
А Си/++ есть только на этих архитектурах?

вот он и попался, разжигатель срача

Дмитрий-🎮 Автор вопроса

Вот поэтому я и писал предыдущие сообщения. Записал в char 192, а на выходе получил 4'294'967'232, странно.

а на какой архитектуре твой пк? На арме чар из 7 бит?

Aniki Hi$ok@ 🌈 Z 🐀
а на какой архитектуре твой пк? На арме чар из 7 б...

Нет, на арме чар не из 7 бит. Стандарт не гарантирует восьмибитность байта, но при этом гарантирует однобайтность char

Дмитрий 🎮
Вот поэтому я и писал предыдущие сообщения. Запис...

в этом моменте самое странное - выводить в консоль чар, и даже std::hex + статик каст к инту не использовать. Понятное дело что сломалось из-за знака

Rekreker
Нет, на арме чар не из 7 бит. Стандарт не гарантир...

так, мы присвоили чару 0b1111'1111, какое отношение к этому имеет то, что байт Может быть не из 8 бит. Да даже 1 бит, можно любой компилятор написать самому. Ты конечно молодец, умный безгранично

Aniki Hi$ok@ 🌈 Z 🐀
так, мы присвоили чару 0b1111'1111, какое отношени...

а я тебя переиграл, использую как конченый uint8_t, из-за таких как ты

Aniki Hi$ok@ 🌈 Z 🐀
так, мы присвоили чару 0b1111'1111, какое отношени...

Так мало ли что можно байту присвоить? char kek = 0x1337; Просто преобразует int в char через type narrowing

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
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
Карта сайта