0Pricing
Zig Academy · Урок

bool, void и типы времени компиляции

Небольшие, но важные примитивные типы.

«bool, void и типы времени компиляции» — бесплатный урок Zig Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Zig Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Zig Academy содержит 4 уроков всего.

Маленькие, но важные типы

Помимо чисел, в Zig есть несколько небольших примитивных типов, которые встречаются повсюду: bool, void и специальные числовые типы времени компиляции. 🧩

bool хранит true или false

bool хранит ровно одно из двух значений: true или false. Он управляет каждым оператором if и условием while в вашей программе.

const ready: bool = true;

Логические значения получают из сравнений

Операторы сравнения создают логические значения. Выражение 5 > 3 даёт true, и это значение можно сохранить или сразу проверить.

const bigger = 5 > 3; // true

void означает отсутствие значения

Тип void обозначает отсутствие значения. Функция, возвращающая void, после завершения не возвращает ничего содержательного.

fn log() void {
    // does work, returns nothing
}

Где используется void

void встречается как тип результата функций с побочными эффектами, а также как содержимое контейнеров, которым важно только наличие ключа.

comptime_int для целых литералов

Нетипизированное целое число, например 42, изначально имеет тип comptime_int. Он поддерживает произвольную точность и получает фиксированную разрядность только при присваивании.

const n = 42; // comptime_int until used

comptime_float для дробных значений

Аналогично, нетипизированное дробное число, например 3.14, имеет тип comptime_float. Во время компиляции оно хранится точно, пока не преобразуется в f32 или f64.

const ratio = 3.14; // comptime_float

Числа времени компиляции гибкие

Поскольку эти типы существуют только во время компиляции, они могут точно хранить очень большие и очень маленькие значения. При использовании они приводятся к типам с фиксированной разрядностью.

Тип type

В Zig сам тип является значением типа type. Благодаря этому функции могут принимать и возвращать типы для обобщённого программирования.

const T: type = i32;

anyopaque для неизвестных данных

Тип anyopaque обозначает память с неизвестной структурой. Его часто используют на границах с C, где расположение данных скрыто от Zig.

Почему важны эти примитивы

Вместе эти небольшие типы образуют основу Zig: логические значения нужны для логики, void — для отсутствия значения, а числа времени компиляции — для гибких литералов.

Быстрая проверка

Вы записали литерал 100 без аннотации типа. Какой тип Zig назначит ему до того, как он будет куда-либо присвоен?

Итоги

Помните о небольших примитивных типах: bool для true и false, void для отсутствия значения, а comptime_int и comptime_float — для гибких литералов. 🎯

Часто задаваемые вопросы

Урок «bool, void и типы времени компиляции» бесплатный?

Да — полный текст урока «bool, void и типы времени компиляции» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Zig Academy, подпишись на CoddyKit PRO. Курс Zig Academy содержит 4 уроков всего.

Чему я научусь в уроке «bool, void и типы времени компиляции»?

Небольшие, но важные примитивные типы. Ты практикуешь Zig Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Zig Academy?

Предыдущий опыт не требуется. Zig Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «bool, void и типы времени компиляции»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Zig Academy?

Да. Каждый урок Zig Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Целые числа заданного размера: i32, u8, usize
  2. Числа с плавающей точкой: f32 и f64
  3. bool, void и типы времени компиляции
  4. Числовые литералы и символы подчёркивания
← Назад к Zig Academy