cpp

Доступ к элементам строки

К элементу строки можно обратиться как к элементу массива. Достаточно указать его индекс в квадратных скобках. Нумерация начинается с нуля. Можно только получить элемент по индексу, а вот изменить элемент по индексу нельзя:

s := "строка"
fmt.Println(s[0]) // 209
fmt.Println(s[1]) // 129
// Изменить элемент нельзя!
// s[0] = 209 // Ошибка!

Обратите внимание: доступ по индексу возвращает значение отдельного байта, а не символ целиком. Русские буквы в кодировке UTF-8 кодируются двумя байтами, поэтому мы получили лишь половину символа.

Чтобы иметь возможность обращаться к символам по индексу следует преобразовать строку в символьный слайс:

s := "строка"
arr := []rune(s)
fmt.Println(arr[0])        // 1089
fmt.Printf("%c\n", arr[0]) // с
// Можно изменить элемент
arr[0] = 'С'
fmt.Println(string(arr))   // Строка

Учебник Go (Golang)
Учебник Go (Golang) в формате PDF

Помощь сайту

ЮMoney (Yandex-деньги): 410011140483022

ПАО Сбербанк:
Счет: 40817810855006152256
Реквизиты банка:
Наименование: СЕВЕРО-ЗАПАДНЫЙ БАНК ПАО СБЕРБАНК
Корреспондентский счет: 30101810500000000653
БИК: 044030653
КПП: 784243001
ОКПО: 09171401
ОКОНХ: 96130
Скриншот реквизитов

cpp