system/ctypes
Source EditНекоторые определения типов для совместимости между различными бэкендами и платформами.
Типы
BiggestFloat = float64
- является псевдонимом для наибольшего типа с плавающей запятой, поддерживаемого компилятором Nim. В настоящее время это
float64, но в общем случае зависит от платформы. Source Edit BiggestInt = int64
- является псевдонимом для наибольшего целочисленного типа со знаком, поддерживаемого компилятором Nim. В настоящее время это
int64, но в общем случае зависит от платформы. Source Edit BiggestUInt = uint64
- является псевдонимом для наибольшего целочисленного типа без знака, поддерживаемого компилятором Nim. В настоящее время это
uint64, но в общем случае зависит от платформы. Source Edit ByteAddress {....deprecated: "use `uint`".} = int- целочисленный тип со знаком, который следует использовать для преобразования указателей в целочисленные адреса для повышения читабельности. Source Edit
clongdouble {.importc: "long double", nodecl.} = BiggestFloat- Это то же самое, что и тип
long doubleв C. Этот тип C не поддерживается генератором кода Nim. Source Edit clonglong {.importc: "long long", nodecl.} = int64- Это то же самое, что и тип
long longв C. Source Edit cschar {.importc: "signed char", nodecl.} = int8- Это то же самое, что и тип
signed charв C. Source Edit cstringArray {.importc: "char**", nodecl.} = ptr UncheckedArray[cstring]- Это бинарно совместимо с типом
char**в C. Значение массива достаточно велико, чтобы фактически отключить проверку границ. Используйте процедуру cstringArrayToSeq для преобразования его вseq[string]. Source Edit cuchar {.importc: "unsigned char", nodecl, ...deprecated: "use `char` or `uint8` instead".} = char- Устарело: Используйте
uint8вместо этого. Source Edit cuint {.importc: "unsigned int", nodecl.} = uint32- Это то же самое, что и тип
unsigned intв C. Source Edit culong {.importc: "unsigned long", nodecl.} = uint32- Это то же самое, что и тип
unsigned longв C. Source Edit culonglong {.importc: "unsigned long long", nodecl.} = uint64- Это то же самое, что и тип
unsigned long longв C. Source Edit cushort {.importc: "unsigned short", nodecl.} = uint16- Это то же самое, что и тип
unsigned shortв C. Source Edit PFloat32 {....deprecated: "use `ptr float32`".} = ptr float32- Псевдоним для
ptr float32. Source Edit
© 2006–2024 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/ctypes.html