tpl 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
tpl 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
tpl 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 BSD
开发语言 C/C++ Perl
操作系统 跨平台
软件类型 开源软件
所属分类 程序开发常用工具包
开源组织
地区 不详
投 递 者 lcl
适用人群 未知
收录时间 2014-02-16

软件简介

tpl 是一个开源的小项目,其主要是提供一个可以序列化或反序列化 C 语言数据的一个 API 函数库,数据以自然的二进制形式存储。

tpl 号称是最有效率的也是最快的,它可以把你内存中的数据存放到文件中,并可以在你需要的时候用文件中反序例化到内存变量中。而且这个函数库没有依赖于别的函数库。tpl 可以序列化许多 C 数据类型,包括结构体。

tpl 做了一个方便的文件格式。例如,假设一个程序需要存储一个用户名和id的列表。可以使用格式字符串A(si)来表示。如果程序需要两个这样的列表(比如,一个是普通用户,一个是管理员),可以用A(si)A(si)表示。使用tpl可以很方便地读写这种结构化数据。

tpl 也可以作为一种IPC消息格式。它可以自动处理字节顺序问题和从流中重构单个消息。

示例代码:

#include "tpl.h"

int main(int argc, char *argv[]) {
    tpl_node *tn;
    int id=0;
    char *name, *names[] = { "joe", "bob", "cary" };

    tn = tpl_map("A(is)", &id, &name);

    for(name=names[0]; id < 3; name=names[++id]) {
        tpl_pack(tn,1);
    }

    tpl_dump(tn, TPL_FILE, "users.tpl");
    tpl_free(tn);
}
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击引领话题📣
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
0 评论
20 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部