Комментарии 9
char всегда по 4 байта? Даже во внутреннем представлении строк?
Внутреннее представление строк — не массив char'ов, а массив байтов, который гарантированно представляет строку в UTF-8. Как в Go.
Имхо, в технических текстах mutability более корректно переводить как изменяемость, на худой конец — прижилась калька мутабельность.
Rust 0.11
println!(«1i — 2 = {}», 1i — 2);
// Попробуйте изменить `1i` на `1u` и понять, почему тип важен
println!(«1u — 2 = {}», 1i — 2);
Выдаёт:
1i — 2 = -1
1u — 2 = -1
А что должно было произойти?
println!(«1i — 2 = {}», 1i — 2);
// Попробуйте изменить `1i` на `1u` и понять, почему тип важен
println!(«1u — 2 = {}», 1i — 2);
Выдаёт:
1i — 2 = -1
1u — 2 = -1
А что должно было произойти?
Надо же не только в форматной строке поменять:
is.gd/SyVz0J:
is.gd/MN2Py3:
is.gd/SyVz0J:
println!("{}", 1i - 2)
=> -1
is.gd/MN2Py3:
println!("{}", 1u - 2)
=> 18446744073709551615
// Специальное форматирование может быть указано в заполнителе после
:
,t
это бинарное представление
println!("{} of {:t} people know binary, the other half don't", 1i, 2i);
Rust 1.67 - ошибка ":t" - нет такого форматирования, в подсказках выдается ":b" для бинарного форматирования и прога собирается
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Rust на примерах. Часть 1