Назад к вопросам
OZON
Junior — Middle
79
Можете объяснить принцип работы кодировки UTF-8 и в чем её основные преимущества?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
UTF-8 — это кодировка символов, которая использует переменное количество байт (от 1 до 4) для кодирования каждого символа Unicode. Она совместима с ASCII, так как символы ASCII кодируются одним байтом с теми же значениями.
Принцип работы:
- Символы с кодами от 0 до 127 занимают 1 байт (совпадает с ASCII).
- Более сложные символы занимают 2, 3 или 4 байта, где первые байты содержат информацию о длине последовательности, а последующие — данные символа.
Основные преимущества UTF-8:
- Совместимость с ASCII, что упрощает работу с существующим текстом.
- Эффективное использование памяти для текстов на латинице.
- Универсальность — поддерживает все символы Unicode.
- Самосинхронизируемость — можно определить начало символа, даже если читать с середины.
Пример в Go для подсчёта количества символов в UTF-8 строке:
package main
import (
"fmt"
"unicode/utf8"
)
func main() {
s := "Привет, мир!"
fmt.Println("Количество символов:", utf8.RuneCountInString(s))
}