Sobes.tech
Назад к вопросам
Junior — Middle
79

Можете объяснить принцип работы кодировки UTF-8 и в чем её основные преимущества?

Компании, где спрашивали
OZONOZON

Ответ от нейросети

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))
}