Size: a a a

Rust — русскоговорящее сообществo

2020 September 14

/

/bin/cat in Rust — русскоговорящее сообществo
В смысле не очевидно? Вот ты просишь в программе 16 байт на стеке, а прога юзает u64 и u8
источник

/

/bin/cat in Rust — русскоговорящее сообществo
Ей не нужно знать о других и там может быть мусор
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
там не &[u8]
источник

Э

Эрик in Rust — русскоговорящее сообществo
Та да, плохой пример.
источник

Э

Эрик in Rust — русскоговорящее сообществo
/bin/cat
В смысле не очевидно? Вот ты просишь в программе 16 байт на стеке, а прога юзает u64 и u8
Так мусор, или uninit память? Если мусор, то UB нет.
источник

/

/bin/cat in Rust — русскоговорящее сообществo
При создании может быть и нет, а если копировать эту структуру куда-нибудь
источник

/

/bin/cat in Rust — русскоговорящее сообществo
То вот это уже UB
источник

/

/bin/cat in Rust — русскоговорящее сообществo
Может быть есть что-то вроде offsetof, чтобы копировать количество байт = offsetof(struct, last_member) + sizeof(last_member_type)
источник

Э

Эрик in Rust — русскоговорящее сообществo
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
Это си
источник

Э

Эрик in Rust — русскоговорящее сообществo
Value-initialized.
источник

Э

Эрик in Rust — русскоговорящее сообществo
Casual tears
Это си
Ну так repr(C), нет?
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
Эрик
Ну так repr(C), нет?
repr(C) дает тебе только layout для данных
источник

/

/bin/cat in Rust — русскоговорящее сообществo
Если явно сделать memset для padding, то это не UB
источник

GA

Goga Asoka in Rust — русскоговорящее сообществo
Какую БД взять для создания чата?
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
Эрик
Ну так repr(C), нет?
источник

/

/bin/cat in Rust — русскоговорящее сообществo
Хм, а что если сделать явный padding и вызвать ::default?
источник

Э

Эрик in Rust — русскоговорящее сообществo
>Or, equivalently (in terms of Abstract Machine behavior), copying Pad marks the target byte as uninitialized.
Ну блин.
источник

Ct

Casual tears in Rust — русскоговорящее сообществo
Эрик
>Or, equivalently (in terms of Abstract Machine behavior), copying Pad marks the target byte as uninitialized.
Ну блин.
А чего ты ожидал? ¯\_(ツ)_/¯
источник

A

Adv0cat in Rust — русскоговорящее сообществo
Goga Asoka
Какую БД взять для создания чата?
Любую, можно и sqlite, чтобы проще всего было 😉
источник