В Go (Golang) указатель на строку — это переменная, которая содержит адрес памяти строкового значения. Это позволяет вам косвенно получать доступ к базовым строковым данным и изменять их. Вот некоторые методы и операции, которые обычно используются со строковыми указателями в Go:
-
Создание указателя на строку:
var strPtr *string -
Инициализация указателя строки:
str := "Hello, World!" strPtr = &str -
Доступ к значению строкового указателя:
fmt.Println(*strPtr) // Output: Hello, World! -
Изменение значения указателя строки:
*strPtr = "New value" fmt.Println(*strPtr) // Output: New value -
Проверка того, равен ли строковый указатель нулю:
if strPtr == nil { fmt.Println("String pointer is nil") } -
Сравнение указателей строк:
str2 := "Hello, World!" strPtr2 := &str2 fmt.Println(strPtr == strPtr2) // Output: false -
Передача указателя строки в функцию:
func modifyString(strPtr *string) { *strPtr = "Modified string" } modifyString(strPtr) fmt.Println(*strPtr) // Output: Modified string -
Преобразование указателя строки в строку:
str := *strPtr -
Извлечение адреса памяти строкового указателя:
fmt.Println(strPtr) // Output: 0x... -
Проверка того, указывает ли указатель строки на действительный адрес памяти:
if strPtr != nil { fmt.Println("String pointer is valid") }