SakuraE 运行时库
February 8, 2026 · View on GitHub
SakuraE 编译器的运行时库,提供内存管理、字符串处理及基础 I/O 支持。
文件列表及功能说明
1. 内存管理
alloc.h: 内存分配器的头文件,定义了运行时核心分配接口。alloc.cpp:__alloc(size_t size): 封装malloc,提供带零初始化的堆内存分配,并包含内存不足时的错误处理。__free(void* ptr): 封装free,用于释放堆内存。
2. 字符串处理
raw_string.cpp:create_string(const char* literal): 将 C 风格字符串字面量拷贝到堆内存中,支持字符串的可变性。free_string(char* str): 释放由运行时创建的字符串内存。concat_string(const char* s1, const char* s2): 连接两个字符串并返回存储在堆上的新字符串。
3. 基础 I/O
print.cpp:__print(char* str): 打印字符串到标准输出。__println(char* str): 打印字符串并换行。
编译与链接
这些文件通常被编译为目标文件或静态库,并在 LLVM 后端生成代码后,与用户程序链接以提供运行时支持。