Вопрос Щитпост

Статус
В этой теме нельзя размещать новые ответы.
Obstruct Omicronium
Пользователь
Статус
Оффлайн
Регистрация
28 Авг 2022
Сообщения
67
Реакции[?]
78
Поинты[?]
66K
вопрос был про оптимизацию? нескромный вопрос, у меня в профиле или на лице написано "все темы, которые я создаю сделаны с целью АПТИМИЗИРОВАТЬ свой говнокод"?
А чего ты так взъелся-то? Тебе вроде мы всё сказали вполне нормально и адекватно. Да, компилятор может оптимизировать какие-либо вещи, собственно, все компиляторы это и делают, так или иначе. Не в упрёк тебе, но наверное стоит относиться к вещам проще.

для меня, как для человека, который относительно недавно начал учить плюсы, такое поведение стало странным, причиной создания темы была не ошибка, а желание
Наверное, стоило просто нормально назвать тему, да и всё. Если бы нормально назвал, спросил аля: "Не понимаю почему так, а не эдак", то тебе бы и отвечали нормально, сразу бы рассказали про выравнивание структур и классов. Более шарящие ещё бы показали как работают #pragma pack и битовые поля.


а если создать массив чаров в мейне из девяти, у нас компилятор округлит (а поч бы и нет) до 16, чтоб кратно было?
Будет 9.
 
Эксперт
Статус
Оффлайн
Регистрация
29 Мар 2021
Сообщения
1,596
Реакции[?]
605
Поинты[?]
46K
Разработчик
Статус
Онлайн
Регистрация
18 Мар 2020
Сообщения
442
Реакции[?]
872
Поинты[?]
197K
то на платформе x64 наш прелестный int будет иметь размер в 8 байт
Отнюдь нет, его размер так и останется 4 байт
А чего ты так взъелся-то? Тебе вроде мы всё сказали вполне нормально и адекватно. Да, компилятор может оптимизировать какие-либо вещи, собственно, все компиляторы это и делают, так или иначе. Не в упрёк тебе, но наверное стоит относиться к вещам проще.


Наверное, стоило просто нормально назвать тему, да и всё. Если бы нормально назвал, спросил аля: "Не понимаю почему так, а не эдак", то тебе бы и отвечали нормально, сразу бы рассказали про выравнивание структур и классов. Более шарящие ещё бы показали как работают #pragma pack и битовые поля.



Будет 9.
Реально, типуля обосрал всех и вся якобы за неправильный ответ, при этом сам его не зная, теперь после статьи мсдн сидит рацеи про алигн никому ненужные устраивает:roflanEbalo:

"Я не знаю правильного ответа и почему там 16 байт выводит, но я въебу вам клоуна за то, что вы не дали правильный ответ"
 
Эксперт
Статус
Оффлайн
Регистрация
29 Мар 2021
Сообщения
1,596
Реакции[?]
605
Поинты[?]
46K
Отнюдь нет, его размер так и останется 4 байт

Реально, типуля обосрал всех и вся якобы за неправильный ответ, при этом сам его не зная, теперь после статьи мсдн сидит рацеи про алигн никому ненужные устраивает:roflanEbalo:

"Я не знаю правильного ответа и почему там 16 байт выводит, но я въебу вам клоуна за то, что вы не дали правильный ответ"
Попкорн*. Жуем, брат, жуем.
 
Obstruct Omicronium
Пользователь
Статус
Оффлайн
Регистрация
28 Авг 2022
Сообщения
67
Реакции[?]
78
Поинты[?]
66K
Реально, типуля обосрал всех и вся якобы за неправильный ответ, при этом сам его не зная, теперь после статьи мсдн сидит рацеи про алигн никому ненужные устраивает
Так и живём, чё уж там. Зато будет чем похвастаться перед друзьями!
 
ЧВК EB_LAN
Пользователь
Статус
Оффлайн
Регистрация
6 Окт 2018
Сообщения
302
Реакции[?]
75
Поинты[?]
15K
всем, кто писал 12 - когда смогу ставить реакции, поставлю клоуна, а инсульту поставлю клоуна просто так.
ответ - 16, первым правильный и аргументированный ответ написал luvwillow .
по причине выравнивания классов, вся память класса делится на условные сеткоры по размеру максимального значения.
пример -
int* будет занимать 8, bool будет занимать 1.
по причине выравнивания классов, объект будет занимать 16 байт, так как булл будет находиться в новом "секторе",и, хотя он будет занимать всего один байт, будет занято в общей сумме 16.
Когда сможешь ставить реакции, то не сможешь ставить клоуна
 
what?
Пользователь
Статус
Оффлайн
Регистрация
10 Мар 2019
Сообщения
302
Реакции[?]
41
Поинты[?]
9K
На самом деле я Zodiak
Участник
Статус
Оффлайн
Регистрация
22 Дек 2020
Сообщения
1,026
Реакции[?]
182
Поинты[?]
71K
Ревёрсер среднего звена
Пользователь
Статус
Оффлайн
Регистрация
24 Ноя 2022
Сообщения
303
Реакции[?]
108
Поинты[?]
57K
теперь вся память делится на 8
Именно так, лол, паддинги делаются для ускорения чтения, CPU не нравится читать невыравненные 8 байт

И хватит уже на каждое новое открытие в плюсах делиться этим с нами
 
Забаненный
Статус
Оффлайн
Регистрация
8 Июн 2022
Сообщения
15
Реакции[?]
2
Поинты[?]
1K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
мы можем только сказать, что размер структуры будет не меньше размера всех содержащихся в ней переменных. Но он может быть больше! Из соображений производительности компилятор иногда добавляет пробелы в структуры (это называется дополнением ).
 
Эксперт
Статус
Оффлайн
Регистрация
29 Мар 2021
Сообщения
1,596
Реакции[?]
605
Поинты[?]
46K
ну бтв, размер структуры действительно будет 12 - другой уже вопрос сколько памяти аллоцируется под него на стеке =)
 
Забаненный
Статус
Оффлайн
Регистрация
6 Авг 2022
Сообщения
128
Реакции[?]
25
Поинты[?]
4K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Именно так, лол, паддинги делаются для ускорения чтения, CPU не нравится читать невыравненные 8 байт

И хватит уже на каждое новое открытие в плюсах делиться этим с нами
может люди читать не умеют, за счёт айкью теста был задан вопрос - почему происходит именно так, конечный результат (из примера в основной мсг) 16 байт был известен методом народного тыка, а почему именно так я не знал, по этой причине создал тред с интересным названием и интересным содержанием, которое по неизвестной причине заставило бомбом многие передаки (а сапдрагон тут вообще зачем)
Отнюдь нет, его размер так и останется 4 байт

Реально, типуля обосрал всех и вся якобы за неправильный ответ, при этом сам его не зная, теперь после статьи мсдн сидит рацеи про алигн никому ненужные устраивает:roflanEbalo:

"Я не знаю правильного ответа и почему там 16 байт выводит, но я въебу вам клоуна за то, что вы не дали правильный ответ"
последнее - именно то, что я хотел, максимально много актива, максимально много ответов
я знал конечный результат, но не причину следствия, а тут мне выдали 3 страницы результатов (50% кала конечн, но пойдёт)
может люди читать не умеют, за счёт айкью теста был задан вопрос - почему происходит именно так, конечный результат (из примера в основной мсг) 16 байт был известен методом народного тыка, а почему именно так я не знал, по этой причине создал тред с интересным названием и интересным содержанием, которое по неизвестной причине заставило бомбом многие передаки (а сапдрагон тут вообще зачем)

последнее - именно то, что я хотел, максимально много актива, максимально много ответов
я знал конечный результат, но не причину следствия, а тут мне выдали 3 страницы результатов (50% кала конечн, но пойдёт)
самое интересное, после того, как я понял почему, я написал отдельным сообщением для тех, кому лень читать статью от мягких, а такие люди, как https://yougame.biz/members/531221/ даже после сообщения писали "free my mane! вся система делится на 8 байт и тебе остаётся плакать в подушку, если у тебя 1 чар в классе!"
тред был создан не в целях поглумиться над некорректными ответами, а в целях произвести культурное обогащение, чтоб больше не было такого Посмотреть вложение 254129
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу