Kintsugi OS 0.2.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) ((b) ? (void)0 : panic_assert(__FILE__, __LINE__, #b))
35
36void panic_assert(const char* file, u32 line, const char* desc);
37
38int isalnum(int c);
39int isalpha(int c);
40int isblank(int c);
41int iscntrl(int c);
42int isdigit(int c);
43int isgraph(int c);
44int islower(int c);
45int isprint(int c);
46int ispunct(int c);
47int isspace(int c);
48int isupper(int c);
49int isxdigit(int c);
50
51// 7.4.2 Character case mapping functions
52int tolower(int c);
53int toupper(int c);
54
55#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:123
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:175
unsigned short u16
Definition ctypes.h:13
int s32
Definition ctypes.h:12
int tolower(int c)
Преобразование символа в нижний регистр
Definition ctypes.c:160
int isupper(int c)
Классификация символов верхнего регистра
Definition ctypes.c:135
int isxdigit(int c)
Классификация шестнадцатеричных цифр
Definition ctypes.c:145
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