В документации Swift обсуждается следующий код:
let dogString = "Dog‼?"
for codeUnit in dogString.utf8 {
print("\(codeUnit) ", terminator: "")
}
print("")
// Prints "68 111 103 226 128 188 240 159 144 182 ”
Тогда упоминается, что:
«Следующие три десятичных значения codeUnit (226, 128, 188) представляют собой трехбайтовое представление UTF-8 символа DOUBLE EXCLAMATION MARK.»
Но как было получено это значение (226, 128, 188)? Какой расчет происходит за сценой?