摘要:作者:zyl910一、缘由 在写一些生成文本的程序时,经常需要使用带缩进的格式化输出的功能。以前为此写过不少类似的函数,可惜它们的可重用性很差。 这是因为——1) C语言的FILE*不支持重定向到自己的缓冲区。2) C++的流机制允许重定向到自己的流缓冲区。可惜这依赖了C++的专有语法,纯C无法用上。 因为上述原因,以前至少得为C与C++编写两套函数集。如果考虑到char/wchat_t/TCHAR,函数集会变得更加臃肿。 于是我决定编写一套“能以相同的代码绑定到 C FILE 或 C++流”的带缩进的格式化输出库。zltabout就是该想法的成果。二、C范例Step 1 定义 ZLT...
阅读全文
08 2013 档案
摘要:作者:zyl910 v1.1版的改动如下——将源码上传到github.调整目录结构.添加CMake编译配置文件.使用doxygen规范注释. 文件清单——docs\docs\images\docs\images\examples_tcharall.pngexamples\examples\tcharall\examples\tcharall\makefileexamples\tcharall\tcharall.cexamples\tcharall\tcharall_2003.slnexamples\tcharall\tcharall_2003.vcprojexamples\tcharall..
阅读全文
摘要:作者:zyl910 很多文章介绍了详细的解说了各种开源许可证及它们的区别。但是,具体该选择哪一种许可证?如何修改项目使其符合某种开源许可证?就很少见到指导了。于是本文探讨这两个问题。一、如何选择开源许可证 阮一峰《如何选择开源许可证?》中的图片清晰的展示了各种开源许可证的区别—— 可是,对于新手来说,一下子见到这么多种许可证,还是会感到有些眼花缭乱,难以抉择。 于是,我建议最初时只关注三种开源许可证——1) 如果您想为GPL世界添砖加瓦,或者项目引用了GPL许可证的模块,那么当然得使用GPL许可证;2) 如果您想分享自己的编程心得,不想让许可证限制了知识的传播,这时可使用MIT许可证;...
阅读全文