百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
C

ctl

> 编程语言
开源

C 模板库

1.4K stars0 点赞1 次浏览
访问官网GitHub

工具介绍

C 模板库

C 类型库 (CTL) CTL 是一个快速编译、类型安全、只包含头文件的、类似于模板的 ISO C99/C11 库。 ## 目标 CTL 的目标是通过在 ISO C99/C11 中实现以下 STL 集合来提高 ISO C99/C11 开发者的工作效率: ```

deq.h = std::deque lst.h = std::list pqu.h = std::priority_queue que.h = std::queue set.h = std::set stk.h = std::stack str.h = std::string ust.h = std::unordered_set vec.h = std::vector ## 使用 使用内置类型或 typedef 类型 `T` 配置 CTL 集合。C #include <stdio.h>

#define P #define T int #include <vec.h>

int compare(int* a, int* b) { return *b < *a; }

int main(void) { vec_int a = vec_int_init(); vec_int_push_back(&a, 9); vec_int_push_back(&a, 1); vec_int_push_back(&a, 8); vec_int_push_back(&a, 3); vec_int_push_back(&a, 4); vec_int_sort(&a, compare); foreach(vec_int, &a, it) printf("%d\n", *it.ref); vec_int_free(&a); } 定义 `P` 表明类型 `T` 是 Plain Old Data (POD)。 要编译,请包含 `ctl` 目录:shell gcc main.c -I ctl


对于具有内存所有权的类型,需要省略定义 `P`, 并需要在包含容器之前声明析构函数和拷贝构造函数的 C++ 等价函数:

要运行所有功能测试,请运行:

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

C

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言