История изменений
Исправление tp_for_my_bunghole, (текущая версия) :
Это слишком. И это binding.
Но для Rust это можно считать допустимым подходом, наверно.
В Go range
понимает utf8:
const nihongo = "日本語"
for index, runeValue := range nihongo {
fmt.Printf("%#U starts at byte position %d\n", runeValue, index)
}
Покажет 3 иероглифа и индекс начального байта для каждого.
Классический цикл как в C покажет только отдельные байты.
Больше возможностей в стандартном пакете unicode/utf8.
Исходная версия tp_for_my_bunghole, :
Это слишком. И это binding.
В Go range
понимает UTF-8:
const nihongo = "日本語"
for index, runeValue := range nihongo {
fmt.Printf("%#U starts at byte position %d\n", runeValue, index)
}
Покажет 3 иероглифа и индекс начального байта для каждого.
Классический цикл как в C покажет только отдельные байты.