文章目录

  • 一、freecplus框架简介
  • 二、freecplus开源许可协议
  • 三、freecplus框架内容
    • 字符串操作
    • 2、xml解析
    • 3、日期时间
    • 4、目录操作
    • 5、文件操作
    • 6、日志文件
    • 7、参数文件
    • 8、tcp网络通信
    • 9、ftp客户端
    • 10、Oracle数据库操作
    • 11、MySQL数据库操作
    • 12、PostgreSQL数据库操作
  • 四、应用举例
  • 五、文档和下载
  • 六、版权声明

一、freecplus框架简介

freecplus框架是UNIX平台下C/C++程序开发的业务层基础框架,由C语言技术网组织开发、维护。其目的是为C/C++程序员供免费的、开源的程序库。freecplus框架与C++标准库结合使用,可以极大的提高程序员的开发效率。

freecplus框架的初衷是为C/C++程序员提供功能强大、简单易用的函数和类,把程序员从纷繁复杂的C/C++底层代码中解放出来,程序员将更关注软件功能和业务逻辑的实现。

freecplus框架中采用了第三方的开源库,如ftplib,并对这些库做了封装,形成更简单易用的类库。

在致力开源的C/C++程序员的努力下,freecplus将不断的优化、完善和扩展,希望有更多的优秀程序员加入。

二、freecplus开源许可协议

freecplus开源许可协议正文如下:

版权所有 © 2008-2020,码农有道,C语言技术网(www.freecplus.net)。

特此向任何得到本软件副本或相关文档的人授权:被授权人有权使用、复制、修改、合并、出版、发布、散布、再授权和/或贩售软件及软件的副本,及授予被供应人同等权利,只需服从以下义务:

在软件和软件的所有副本中都必须包含以上版权声明和本许可声明。

如果违返,无论在本软件的使用上或其他买卖交易中是否涉及合同,都属于侵权行为,我们保留追究的权利。

freecplus开源许可协议正文结束。

三、freecplus框架内容

按照实现的功能,freecplus框架有12个分类。

字符串操作

字符串操作函数和类,包括:

1)安全的字符串复制函数;

2)安全的字符串拼接函数;

3)安全的格式化输出到字符串的函数;

4)删除字符串左边、右边和两边指定字符的函数;

5)字符串大小写转换函数;

6)字符串替换函数;

7)从字符串中提取数字的函数;

8)正则表达式函数;

9)字符串拆分的类;

10)统计字符串字数的函数。

2、xml解析

从xml格式的字符串中解析出字段。

3、日期时间

1)日期时间的获取、转换和运算;

2)把整数表示的时间转换为字符串表示的时间;

3)把字符串表示的时间转换为整数表示的时间;

4)时间运算;

5)精确到微秒的计时器。

4、目录操作

1)创建目录以及子目录;

2)递归获取目录以及子目录中的文件信息。

5、文件操作

1)打开、读取、删除、重命名、复制文件;

2)获取文件的大小和时间;

3)重置文件的时间;

4)常用的文件操作方法类。

6、日志文件

把C/C++服务程序记录程序运行和数据处理的日志记录到文件中,包括日志文件的创建、切换、备份等。

7、参数文件

加载C/C++服务程序运行参数。

8、tcp网络通信

1)封装了socket系列函数,实现tcp客户端,包括报文的接收和发送;

2)封装了socket系列函数,实现tcp服务端,包括报文的接收和发送;

3)解决了tcp报文粘包的问题;

4)通信可以设置超时机制。

9、ftp客户端

采用ftp协议,实现ftp客户端的常用功能。

10、Oracle数据库操作

封装了OCI(Oracle Call Interface)函数库,实现对Oracle数据库的操作。

11、MySQL数据库操作

封装了MySQL提供的mysqlclient函数库,实现对MySQL数据库的操作。

12、PostgreSQL数据库操作

封装了PostgreSQL提供的pq函数库,实现对PostgreSQL数据库的操作。

四、应用举例

C/C++语言操作数据库是一个技术难点,做过这方面开发程序员深有体会,尤其是Oracle数据库,Pro*C的效率低下,代码冗长,OCI功能强大,但是难以驾驭。在freecplus框架中,把Oracle的OCI函数封装成了connection和sqlstatement两个类,操作Oracle数据库如探囊取物。

以下示例(createtable.cpp)是采用freecplus框架创建表的代码。

/**  程序名:createtable.cpp,此程序演示freecplus框架操作Oracle数据库(创建表)。*  作者:C语言技术网(www.freecplus.net) 日期:20190525
*/
#include "_ooci.h"   // freecplus框架操作Oracle的头文件。int main(int argc,char *argv[])
{connection conn; // 数据库连接类// 登录数据库,返回值:0-成功,其它-失败。// 失败代码在conn.m_cda.rc中,失败描述在conn.m_cda.message中。if (conn.connecttodb("scott/tiger@snorcl11g_198","Simplified Chinese_China.ZHS16GBK")!=0){printf("connect database failed.\n%s\n",conn.m_cda.message); return -1;}sqlstatement stmt(&conn); // 操作SQL语句的对象。// 准备创建表的SQL语句。// 超女表girls,超女编号id,超女姓名name,体重weight,报名时间btime,超女说明memo,超女图片pic。stmt.prepare("\create table girls(id    number(10),\name  varchar2(30),\weight   number(8,2),\btime date,\memo  clob,\pic   blob,\primary key (id))");// prepare方法不需要判断返回值。// 执行SQL语句,一定要判断返回值,0-成功,其它-失败。// 失败代码在stmt.m_cda.rc中,失败描述在stmt.m_cda.message中。if (stmt.execute() != 0){printf("stmt.execute() failed.\n%s\n%s\n",stmt.m_sql,stmt.m_cda.message); return -1;}printf("create table girls ok.\n");
}

运行效果

五、文档和下载

本文简单介绍了freecplus框架的基本情况。

更多文档请访问“C语言技术网->freecplus框架栏目”。

源代码下载请访问“C语言技术网->资源下载栏目”。

六、版权声明

C语言技术网原创文章,转载请说明文章的来源、作者和原文的链接。
来源:C语言技术网(www.freecplus.net)
作者:码农有道

如果文章有错别字,或者内容有错误,或其他的建议和意见,请您留言指正,非常感谢!!!

freecplus框架,Linux平台下C/C++程序员提高开发效率的利器相关推荐

  1. freecplus框架,Linux平台下C_C++程序员提高开发效率的利器

    文章目录 一.freecplus框架简介 二.freecplus开源许可协议 三.freecplus框架内容 字符串操作 2.xml解析 3.日期时间 4.目录操作 5.文件操作 6.日志文件 7.参 ...

  2. lombok 构造函数_java程序员提高开发效率必备工具lombok,不会你就out了

    一.本文大纲 使用lombok插件的好处 如何安装lombok插件 使用lombok注解简化开发 二.使用lombok插件的好处 我们在java开发过程中,经常会有一些常规性的,重复性的工作.比如: ...

  3. 优秀程序员的开发效率是普通程序员的 10 倍,那么如何提升呢?

    1975 年,弗雷德里克·布鲁克斯(Frederick Brooks)出版了软件行业的名著<人月神话>,他给出了一个统计结果,优秀程序员的开发效率是普通程序员的 10 倍.40 多年过去了 ...

  4. 扬尼斯定律:程序员的开发效率每6年提高一倍

    我不断的听到各种关于"软件危机"的警言,以及关于软件开发缺少过程规范的批评.我做编程工作超过15年,我认为这些言论基本上都是错的:我确信我能在很短的时间里用如今的开发工具复制出15 ...

  5. pydev工程linux运行,Linux平台下Python的安装及IDE开发环境搭建

    转自http://blog.csdn.net/guoxiaojie_415/article/details/48108319 1.Python安装 Python有2.X和3.X两个版本,由于2.X的版 ...

  6. Linux平台下Python的安装及IDE开发环境搭建

    1.Python安装 Python有2.X和3.X两个版本,由于2.X的版本较稳定,使用者也较多,本文选择使用Python 2.X版本. 安装步骤: (1) 下载Python安装包:https://w ...

  7. 22条日常技巧助程序员提高工作效率、节约时间

    这不是一个关于时间的问题,而是关于精力. 为了"有效率",我们试图在一个工作日内塞进尽可能多的小时,但最终一切都更多地取决于你的注意力,积极性和良好状态(这些都是直接与精力等级联系 ...

  8. 【Linux 中国】最适合程序员的 10 款 Linux 发行版

    最适合程序员的 10 款 Linux 发行版 我们为程序员和开发人员总结了 2022 年最好用的 10 款 Linux 发行版,以便他们开展日常工作和个人项目. 由于工作和项目需要,程序员和开发人员会 ...

  9. linux oraclerman自动备份,Linux平台下的Oracle自动备份案例(使用RMAN)

    有个童鞋问rman的自动备份脚本程序,我之前有写过exp备份指定方案自动备份案例(Linux平台下的Oracle自动备份案例(使用exp工具)  http://www.linuxidc.com/Lin ...

最新文章

  1. java double 位运算_JAVA位运算等运算符总结
  2. 在Linq to Sql中管理并发更新时的冲突(3):使用记录的时间戳进行检测
  3. 前端学习(3346):设计模式之工厂模式3
  4. 支付渠道路由系统进化史
  5. 六招教你快速提升网站交互体验,降低跳出率
  6. Effective Java第二版 读后感
  7. MS-SQL中创建索引
  8. 对文式编程的一些误解
  9. 什么是MySQL视图
  10. 如何才能把文字的排版做好
  11. 骨骼动画原理学习笔记
  12. 对Redis中主从复制、哨兵模式和集群进行部署
  13. SQL优化中索引列使用函数之灵异事件
  14. Nature重磅:软硬分离、图灵完备,清华首次提出“类脑计算完备性”
  15. upc 个人训练赛第三场:排课表(容斥原理+组合数学)
  16. 小巧实用的pdf阅读器
  17. 利用 MQL5 和 MQL4 实现的选择和导航实用程序
  18. 2018传智播客黑马python视频教程15期
  19. 静态HTML网页设计作品:订餐系统网站设计——绿色的网上订餐系统(23个页面) 网页作品 订餐系统网页设计作业模板 学生网页制作源代码下载
  20. ECCV 2020 3D点云 Point Cloud 文章汇总

热门文章

  1. BeautifulSoup解析库select方法实例——获取企业信息
  2. 重磅:《Python可以这样学》正式出版
  3. 详解Python内置函数iter()用法
  4. java报错信息怎么看_AE-E3D插件无效或提示OPENGL E3D Debug等错误报错信息怎么办?...
  5. mysql 长度为1 的空字符串_MYSQL,如果定义了一个字符串的字段,长度为255,那么当我添加一个空字符串数据时占用空间吗?...
  6. linux下mkdir头文件_Linux中mkdir函数与Windows中_mkdir函数的区别
  7. 32位系统安装oracle11g,windows系统下 32位 安装Oracle 11g R2(11.2.0.1.0)图文安装教程
  8. 明机器人孔尧是哪里人_明机器人孔尧:希望未来打造场景机器人交流平台
  9. ztree在刷新时第一个父节点消失_从反向传播推导到梯度消失and爆炸的原因及解决方案(从DNN到RNN,内附详细反向传播公式推导)...
  10. 张家口以太坊智能合约开发实战pdf_以太坊2.0:实现可扩展性之路漫长而曲折