Kintsugi OS 0.4.0
x86 Monolithic OS
Loading...
Searching...
No Matches
ctypes.h
Go to the documentation of this file.
1/*------------------------------------------------------------------------------
2 * Kintsugi OS KKLIBC source code
3 * File: kklibc/ctypes.h
4 * Title: Библиотека для работы с типами C (заголовочный файл)
5 * Description: null
6 * ----------------------------------------------------------------------------*/
7
8#ifndef KKLIBC_CTYPES_H
9#define KKLIBC_CTYPES_H
10
11typedef unsigned int u32;
12typedef int s32;
13typedef unsigned short u16;
14typedef short s16;
15typedef unsigned char u8;
16typedef char s8;
17
18#define NULL ((void*)0)
19#define true 1
20#define false 0
21
22#define low_16(address) (u16)((address) & 0xFFFF)
23#define high_16(address) (u16)(((address) >> 16) & 0xFFFF)
24
25#define KB (1024)
26#define MB (1024 * 1024)
27#define GB (1024 * 1024 * 1024)
28#define TB (1024 * 1024 * 1024 * 1024)
29#define PB (1024 * 1024 * 1024 * 1024 * 1024)
30#define EB (1024 * 1024 * 1024 * 1024 * 1024 * 1024)
31#define ZB (1024 * 1024 * 1024 * 1024 * 1024 * 1024 * 1024)
32#define YB (1024 * 1024 * 1024 * 1024 * 1024 * 1024 * 1024 * 1024)
33
34#define ASSERT(b) \
35 do { \
36 if (!(b)) \
37 panic_assert(__FILE__, __LINE__, #b); \
38 } while (0)
39
40void panic_assert(const char* file, u32 line, const char* desc);
41
42int isalnum(int c);
43int isalpha(int c);
44int isblank(int c);
45int iscntrl(int c);
46int isdigit(int c);
47int isgraph(int c);
48int islower(int c);
49int isprint(int c);
50int ispunct(int c);
51int isspace(int c);
52int isupper(int c);
53int isxdigit(int c);
54
55int tolower(int c);
56int toupper(int c);
57
58#endif
int iscntrl(int c)
Классификация управляющих символов
Definition ctypes.c:58
unsigned int u32
Definition ctypes.h:11
int isalpha(int c)
Классификация алфавитных символов
Definition ctypes.c:36
short s16
Definition ctypes.h:14
char s8
Definition ctypes.h:16
int isdigit(int c)
Классификация цифровых символов
Definition ctypes.c:67
int isgraph(int c)
Классификация видимых печатных символов
Definition ctypes.c:76
int isspace(int c)
Классификация пробельных символов
Definition ctypes.c:124
void panic_assert(const char *file, u32 line, const char *desc)
Definition ctypes.c:12
int islower(int c)
Классификация символов нижнего регистра
Definition ctypes.c:88
int isprint(int c)
Классификация печатных символов
Definition ctypes.c:97
int toupper(int c)
Преобразование символа в верхний регистр
Definition ctypes.c:176
unsigned short u16
Definition ctypes.h:13
int s32
Definition ctypes.h:12
int tolower(int c)
Преобразование символа в нижний регистр
Definition ctypes.c:161
int isupper(int c)
Классификация символов верхнего регистра
Definition ctypes.c:136
int isxdigit(int c)
Классификация шестнадцатеричных цифр
Definition ctypes.c:146
int isalnum(int c)
Классификация буквенно-цифровых символов
Definition ctypes.c:24
int isblank(int c)
Классизация пробельных символов
Definition ctypes.c:49
unsigned char u8
Definition ctypes.h:15
int ispunct(int c)
Классификация знаков пунктуации
Definition ctypes.c:108