Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Внутри CPython гид по интерпретатору Python.pdf
Скачиваний:
6
Добавлен:
07.04.2024
Размер:
8.59 Mб
Скачать

348    Приложение. Введение в C для Python-программистов

int itemsize;

...

};

В примере создается новый тип данных с именем arraydescr, который состоит из нескольких полей. Первые два поля — char typecode и int itemsize.

Структуры часто используются как часть typedef, предоставляющего удобный синоним для имени. В приведенном выше примере все переменные нового типа должны объявляться с полным именем struct arraydescr x;.

Часто встречается синтаксис следующего вида:

typedef struct {

PyObject_HEAD SEM_HANDLE handle; unsigned long last_tid; int count;

int maxvalue; int kind; char *name;

} SemLockObject;

Этот пример создает новый нестандартный тип структуры и присваивает ему имя SemLockObject. Для объявления переменной этого типа можно использовать синоним SemLockObject x;.

ВЫВОДЫ

На этом краткий обзор синтаксиса C завершается. Хотя такое описание нельзя назвать даже поверхностным, этого достаточно для чтения и понимания исходного кода CPython.

Книги для программистов: https://t.me/booksforits