Menu
Coddy logo textTech

Нулевые указатели

Часть раздела Основы путешествия по GO на Coddy — урок 65 из 109.

nil-указатель — это указатель, который ни на что не указывает. Это нулевое значение для типов указателей.

Объявите указатель nil:

var ptr *int
fmt.Println(ptr)
fmt.Println(ptr == nil)

Вывод показывает, что указатель равен nil:

<nil>
true

Попытка разыменования нулевого указателя (nil pointer) приводит к панике:

var ptr *int
// Это приведет к аварийному завершению вашей программы
// fmt.Println(*ptr)

Всегда проверяйте, не является ли указатель nil, перед разыменованием:

if ptr != nil {
    fmt.Println(*ptr)
}
challenge icon

Задание

Новичок

В этом испытании вы будете работать с указателями nil в Go. Указатель nil — это указатель, который не указывает ни на какой адрес памяти.

Ваша задача — проверить, является ли указатель nil, и вывести соответствующее сообщение.

В коде уже есть переменная-указатель, которой присвоено значение nil. Вам нужно добавить код, чтобы проверить, является ли указатель nil, и вывести соответствующее сообщение.

Шпаргалка

Нулевой указатель (nil pointer) — это указатель, который ни на что не указывает. Это нулевое значение для типов указателей.

Объявление нулевого указателя:

var ptr *int
fmt.Println(ptr)        // <nil>
fmt.Println(ptr == nil) // true

Всегда проверяйте, не является ли указатель nil, перед разыменованием, чтобы избежать паники (panic):

if ptr != nil {
    fmt.Println(*ptr)
}

Попробуйте сами

package main

import "fmt"

func main() {
	// Это nil-указатель на целое число
	var ptr *int
	
	// TODO: Проверить, является ли ptr nil
	// Если он равен nil, вывести "The pointer is nil"
	// Если он не равен nil, вывести "The pointer is not nil"
	
	fmt.Println("Program completed")
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы