- 博客(26)
- 资源 (13)
- 收藏
- 关注
原创 OpenMP学习的例子
#include <omp.h>#include <stdio.h>#include <stdlib.h>#include <time.h>//////////////////////////////////////////////////////////////////////////////////////////////////////void omp_thread_test(){ int coreNum = omp_get_num_.
2021-09-18 08:54:32 510
转载 QSS语法
选择对象 示例 描述 所有控件 * 选择所有当前控件和其下的所有窗口部件 所有某类的控件对象,被其子控件对象继承 QPushButton 选择该类的所有实例,以及该类的子控件实例(只要是QPushButton) 所有某类的控件对象,不被其子控件对象继承 .QPushButton ...
2021-05-04 21:42:25 246
原创 fftpack库的学习
fftpack库,使用的是pffft库中下载的,不需要额外配置,只需要fftpack.h和fftpack.c两个文件即可。使用也比较简单,有实数fft和复数fft两种。1、复数例子/复数fftvoid cfft_test(){ int N = 16; int Nfloat = 2 * N; int Nbytes = Nfloat * sizeof(fftpack_real); fftpack_real *wrk = (fftpack_real*)...
2020-10-01 10:43:07 1140
原创 Pffft库的学习
Pffft:a pretty fast FFT。1.官网下载https://bitbucket.org/jpommier/pffft/src/master/pffft.h和pffft.c就是pffft的全部代码,fftpack.h和fftpack.c是fftpack库,test_pffft.c是对比测试pffft和fftpack的。结果当然是pffft比fftpack运行速度快,但是在不使用SIMD时,二者运行速度几乎是一样的;但开启SIMD后,pffft的速度明显就快很多了。2.VS.
2020-09-30 23:28:40 1455
原创 sqlite库学习(12)使用sqliteexpert pro设计数据库表
SQLite Expert Professional是一个功能非常强大的SQLite数据库查看工具。利用它可以非常直观的查看sqlite数据库的内容;有sql命令行,可以执行sql语句。同时它也是一个非常好的sqlite数据库的设计器,可以设置字段特性以及数据库文件的特性。如果我们在程序中创建sqlite数据库,不知道怎样设计其实可以使用它设计,得到DDL语句,放到程序中就可以设计出一个完美的数据库及表了。创建数据库文件File->new Database创建表设计表...
2020-05-28 20:11:20 796
转载 Lambda表达式
Lambda表达式匿名函数有函数体,但没有函数名。匿名函数是很多高级语言都支持的概念,如lisp语言在1958年首先采用匿名函数。正因为如此,C++11也同样...
2020-05-24 10:58:22 253
原创 sqlite库学习(11)使用sqliteexpert professional打开中文乱码数据库
SQLite数据库管理工具有很多,免费的有sqlitebrowser、SQLite Administrator等,收费的有Navicat for SQLite、SQLiteStudio、SQLiteManager等。本文主要介绍的是sqliteexpert professional,版本3系列,该版本的软件可以通过改变数据库字符,查看有中文乱码的SQLite数据库。一般的数据库管理软件字符编码只有UTF8或者UTF16,sqliteexpert professional 3系列可以使用ANSI(...
2020-05-23 08:20:09 2156
原创 sqlite库学习(10)sqlitebrowser的编译
sqlitebrowser(DB Browser for SQLite) 是一款免费开源的跨平台的SQLite数据库查看工具,Window下可以直接下载安装包,Linux下使用命令:sudo apt-get install sqlitebrowser即可安装。sqlitebrowser是开源的,基于QT5开发的。代码质量较高,对于中型软件开发以及提高自己的C++(QT)编码水平,大有裨益。源代码:https://github.com/sqlitebrowser/sqlitebrowser。在w..
2020-05-22 20:40:49 1299 1
原创 sqlite库学习(9) 加密版sqlite库使用
加密版sqlite库编译详见我的另一篇文章《sqlite库学习(2)编译加密版的sqlite》,里面有源码。对sqlite加密,首先需要得到sqlite对象指针,就是先使用sqlite3_open打开或创建数据库文件,然后使用sqlite3_key函数。如果是创建数据库,sqlite3_key就是设置密码;如果是打开数据库,sqlite3_key就是解密。删除数据库的密码,先解密后,设置sqlite3_rekey密码为空即可。int DB_SetKey(sqlite3 *db,const ..
2020-05-22 18:58:36 342
原创 sqlite库学习(8)sqlite插入与读取二进制
源码下载:https://download.csdn.net/download/no2101/124282351、插入void DB_Insert_table_student(sqlite3 *db){ int result = -1; sqlite3_stmt *stat = 0; const char *pzTail = NULL; const char *sqls[] = { "insert into S...
2020-05-16 20:35:38 819
原创 sqlite库学习(7)sqlite读取
下载地址:https://download.csdn.net/download/no2101/12428235。1、sqlite3_execstatic int select_callback(void *NotUsed, int argc, char **argv, char **azColName) { int i; for (i = 0; i < argc; i++) { printf("%s = %s\n", azColName[i], ar...
2020-05-16 20:33:08 884
原创 sqlite库学习(6)sqlite快速插入
1、介绍SQLite数据库本质上来讲就是一个磁盘上的文件,所以一切的数据库操作其实都会转化为对文件的操作,而频繁的文件操作将会是一个很好时的过程,会极大地影响数据库存取的速度。例如:向数据库中插入100万条数据,在默认的情况下如果仅仅是执行query.exec(“insert into DataBase(……) values(……)”);就会打开和关闭文件100万次,所以速度当然会很慢。SQLite数据库是支持事务操作的,于是我们就可以通过事务来提高数据库的读写速度。事务的基本原理是:数据...
2020-05-16 09:21:12 749
原创 sqlite库学习(5)sqlite插入
创建数据库和表const char* createTableSQL = " CREATE TABLE TESTTABLE(int_col INT,float_col REAL ,string_col TEXT,ADDRESS char[50])";准备工作 char *zErrMsg = 0; int insertCount =10; const char* insertSQL = "INSERT INTO TESTTABLE(int_col,fl...
2020-05-16 08:32:10 361
原创 sqlite库学习(4)sqlite库核心API
1 Int sqlite3_open(const char *filename, sqlite3 **ppDb) 该函数打开一个指向 SQLite 数据库文件的连接,返回一个用于其他 SQLite 程序的数据库连接对象。如果filename参数是 NULL 或 ':memory:',那么 sqlite3_open() 将会在 RAM 中创建一个内存数据库,这只会在 session 的有效时间内持续。 如果文件名 filename 不为 NULL,那...
2020-05-16 07:50:14 182
原创 sqlite库学习(3)为什么sqlite3_open会失败
1、现象 我们知道使用sqlite库,使用sqlite3_open打开或创建数据库文件的时,有的时候会失败或者数据库名称就是乱码,这是为什么呢?(1)在linux平台下,系统编码是utf8,很少出现问题。(2)问题主要是windows平台下,如果数据库文件名称或路径有中文,通常会出现错误。其实这是sqlite3_open函数的问题,该函数要求文件名称的参数必须是utf8.SQLITE_API int sqlite3_open( const char *filename,...
2020-05-14 19:28:11 2266
原创 Sqlite库学习(2)编译加密版的sqlite
1、wxSqlite介绍 我们在使用mysql等其他数据库时需要输入用户名和密码,但是sqlite数据库就是一个文件,使用navicat、sqlitebrowser等软件就可以直接打开数据库查看,没有一点保护措施。如果在开发中,我们不希望别人知道数据库里面的内容,那么就需要加密版的sqlite库,也就是wxsqlite。实际上wxsqlite不仅包含加密功能,还包含字符转换和用户授权等功能。2、wxSqlite编译成动态库这里用Qt Creator穿件工程,编译得到wxsqlite...
2020-05-13 18:42:16 525
原创 sqlite库学习(1)编译sqlite
Sqlite数据库简介 SQLite是一款轻型的数据库,是遵守ACID的关系型数据库管理系统。它很小,只有sqlite3.h、sqlite3ext.h、sqlite3.c三个C语言文件。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,我们在开发中除了使用C与C++,还可以把它嵌入到其他开发语言中。同样比起其他数据库软件,若Mysql、P...
2020-05-12 20:31:43 502
原创 vxworks下的lstLib库的使用
1、lstLib库简介记得在学《数据结构》这门课的时候,链表好难理解。listlib库是Vxworks源代码中的双向链接库,由于是操作系统的源代码,所以库的代码质量师非常好的,标准的C语言,而且接口的命名、易用性和通用移植性都是非常好的。仔细研究lstLib源码,对提高编程语言能力以及自己封装API都是由非常大的帮助。代码:lstLib.h#ifndef __INClstLibh#define __INClstLibh#ifdef __cplusplusextern "C" {
2020-05-10 16:58:02 1261
原创 国产操作系统(2)中标麒麟和银河麒麟体验QT
1、简介中标麒麟和银河麒麟都是比较优秀的国产化操作系统,从名称上可以看出两者的关系(具体啥关系可以自行百度一下),两者现在都是中国电子的子公司,据说准备合并,共同应对竞争压力。也许不久我们就可以用到全新的国产化Linux操作系统了。2、体验Qt(1)中标麒麟下载地址(网上很多)http://www.downcc.com/soft/25688.html使用虚拟机安装该版本的中标麒麟是32位linux。体验Qt中标麒麟自带Qt4.8.4(新版本的未知),32位版本。(2
2020-05-10 15:08:26 15562
原创 国产操作系统(1)UOS安装QT
1、简介统一操作系统UOS(unity operating system)是由包括中国电子集团(CEC)、武汉深之度科技有限公司、南京诚迈科技、中兴新支点在内的多家国内操作系统核心企业自愿发起“UOS统一操作系统筹备组”共同打造的中文国产操作系统。统一操作系统(UOS)开发方是统信软件,其是一款基于Linux内核的操作系统,分为统一桌面操作系统和统一服务器操作系统。统一桌面操作系统以桌面应用场景为主,统一服务器操作系统以服务器支撑服务场景为主,支持龙芯、飞腾、兆芯、海光、鲲鹏等芯片平台的笔记本、台式
2020-05-09 17:48:53 11168 2
原创 QT的跨平台开发问题(5)彻底解决中文乱码
1、现象(1)QString是支持中文的,所以QT也是支持中文的。很多人遇到问题,并不是本身 QString 的问题,而是没有将自己希望的字符串正确的赋给QString。(2)乱码的问题是由编码和解码方式引起的。涉及到编码方式的地方有3个:源码字符集(cpp和h文件) 执行字符集(编译器) 运行环境字符集(操作系统)(3) Linux平台基本上统一为UTF8,基本不会出现乱码。QT中文乱码实际上基本发生在Windows平台上。错误现象包括:不能正常编译界面是乱码2、
2020-05-08 20:31:37 676
原创 QT的跨平台开发问题(4)跨平台的原理
1、QT跨平台的原理QT跨平台起始并不神奇,qt在不同操作系统下都实现有不同的底层类库,然后再暴露出一个公共的应用层接口,我们做的开发就是基于这个公共的应用层接口来完成。所谓的跨平台是指基于qt写的代码是跨平台,而不是编译出来的文件跨平台,同一份代码需要放到另一个平台上时,需要用另一个平台的类库重新编译。看一下QT的源代码就明白了。通过仔细阅读源代码你就知道,所谓跨平台,就是在不同...
2020-05-07 20:41:41 1273
原创 QT的跨平台开发问题(3)代码在不同系统编译
1.Windows与linux链接虽然国产化linux操作系统搞得如火如荼,但是对于开发人员来说或者说像我这样一直在windows下开发的猿类,还是习惯在windows下开发和调试,然后在linux下面编译运行。一般情况下,我们就是需要在windows下安装一个虚拟机,在windows开发测试完毕后,把代码放到虚拟机的linux下面继续编译和调试,最后运行在真正的机器上。那么wi...
2020-05-07 19:26:17 1082
原创 QT的跨平台开发问题(2)条件编译
1、综述QT虽然是跨平台的,但不同版本的QT,函数可能是有所不同的;同时我们在编程是肯定会使用系统函数,所以在开发过程中,条件编译是不可或缺的。2、判断不同的版本的QT(1)设置编码QTextCodec::setCodecForLocale(QTextCodec::codecForLocale());#if (QT_VERSION <= QT_VERSION_CH...
2020-05-06 20:01:07 665
原创 QT的跨平台开发问题(1)文件编码
1.综述在不同版本的QT、不同的编译器以及不同操作系统下,如果代码文件中有中文或者非纯英文,那么有的时候会编译不过或者程序运行时有乱码。为了程序正确,有时就需要转换代码文件的字符编码。以下是我总结的几类不同QT、编译器和操作系统下的代码文件的需要的字符编码。 序号 QT版本 编译器 字符编码 1...
2020-05-06 19:07:50 348
原创 基于QT的FTP客服端Syncftp
简述Syncftp客户端基于Qt(Qt4或者Qt5都可以)的跨平台的FTP客户端,由于Qt4和Qt5对ftp支持有区别,为了代码统一,就选择了ftplib库作为ftp模块。下载地址:https://download.csdn.net/download/no2101/12386832设计 界面设计 界面分为菜单栏、工具栏、主界面和状态栏。 站点管理设计 新建站...
2020-05-04 12:26:06 549
sqlite_test_all.zip 使用不同的Sqlite库API,对数据库操作
2020-05-16
wxSqlite.zip
2020-05-13
SQlite.zip 使用Qt Creator编译sqlite3
2020-05-12
Notepad++与python script
2020-05-06
Syncftp2.zip
2020-05-04
GeoCoordinate.zip
2020-04-11
gsl-2.6 windows
2019-09-21
radar signal analysis and processing using matlab.zip
2017-11-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人