学习
Li丶Chong
这个作者很懒,什么都没留下…
展开
-
QT——删除含有指定字符的文件,删除文件夹
QT——删除含有指定字符的文件,删除文件夹删除含有指定字符的文件 QDir dir(filePath); 文件的文件夹路径 QStringList fileList = dir.entryList(QDir::AllEntries | QDir::NoDotAndDotDot); //获取文件夹内所有的文件名称 for (int i = 0; i != fileList.size(); i++) { if (fileList[i]原创 2020-11-11 15:26:35 · 748 阅读 · 1 评论 -
Git常用的操作指南,提交,合并,更新
Git常用的操作指南,提交,合并,更新git status : 查看自己本地分支的修改内容其中红色部分为自己的修改内容git add : git add . 是提交所有的修改到缓存区中 git add (文件路径)是提交一个修改文件到缓存区中,可以通过git status 查看,你看绿色就显示已经保存到缓存区中了,git commit -m “”: “” 内输入对修改的说明,提交到版本库git push : 把修改推到git上更新代码git checkout :切换分支,git.原创 2020-09-01 17:25:22 · 522 阅读 · 0 评论 -
QML,QT,C++实现模糊查找功能
**QML+C++实现模糊查找功能**由于QML中不能直接实现模糊查找功能,所以功能的是现在后台C++部分实现在这里介绍一种容器QSet,QSet具有去重的作用,可将在将数据保存到容器的时候将数据中重复的部分删除,也防止在查找的时候出现重复数据上代码,看备注详解Q_INVOKABLE QVariantList DataManager::search(QString zoneId){ if (curFiles == nullptr) { return QVariantList(); }原创 2020-09-01 16:02:16 · 1981 阅读 · 0 评论 -
QT实现对文本的读取,并提取第一个字符,以及对截取字符串的介绍
程序很简单,在实现功能的同时,介绍一些函数的基本用法,供初学者参考int FileIO::readLFCAL(QDir dataDir){ QString filepath = dataDir.absolutePath() + "/LF.CAL"; // 打开文件的位置 QFile CAL(filepath); //打开文件 int LFCalRes;原创 2020-07-21 16:44:51 · 4767 阅读 · 0 评论 -
qt 实现视频播放——做屏保方向
使用qt实现播放视频做屏保,通过监听鼠标的移动,滚轮和键盘的操作关闭视频博客说明:本篇博客介绍如何利用qMediaPlayer和qvideowidget实现视频文件(avi,mp4…)的播放,通过监听鼠标的移动,滚轮和键盘的操作关闭视频pro文件:加入QT += multimedia multimediawidgetsWidget.h:#ifndef WIDGET_H#define WIDGET_H#include <QWidget>#include <QLabel&原创 2020-05-22 11:32:34 · 499 阅读 · 0 评论 -
Linux操作系统——启动进程:exec族
exec在Linux中指的是一组函数,一共是六个,分别是int execl(const char *path,const char *arg,…)int execlp(const char *path,const char *arg,…)int execle(const char *path,const char *arg,…,char const *envp[])int excev(c...原创 2019-08-10 20:24:30 · 634 阅读 · 0 评论 -
Linux操作系统——进程退出
在Linux中,进程的退出表示进程即将结束,进程的退出分为正常退出和异常退出两种正常退出 在main()函数中执行return 调用exit()函数 调用_exit()函数异常退出 调用about函数 进程收到某个信号,而该信号使程序终止这两种退出,系统最终都会执行内核中的统一代码,这段代码用来关闭进程所用已打开的文件描述符,释放它所占用的内存和其他资源标题退出方式的不...原创 2020-07-16 14:04:50 · 953 阅读 · 0 评论 -
Linux操作系统——qtcreator5.8安装教程
Qt是嵌入式开发的必备工具之一,下面是安装Qt5.8的全过程:1、首先从Qt官网上下载Qt5.8的安装包。下载网址:http://download.qt.io/archive/qt/2.从官网下载5.8版本3.复制到你想要安装的目录下然后执行sudo ./qt-opensource-linux-x64-5.8.0.run如果不能执行,那么先执行下面操作chmod +x qt-ope...原创 2020-07-16 14:04:29 · 2483 阅读 · 2 评论 -
Linux网络编程——管道通信
管道通信分为无名管道和有名管道,无名管道可以用于具有亲缘关系进程间的通信,有名管道克服管道没有名字的限制管道是Linux支持的最初UNIX IPC形式之一,具有以下特点 管道是半双工的,数据只能想一个方向流动,需要进行双向通讯时需要建立两个管道 只能用与父子进程和兄弟进程之间(具有亲缘关系)的通讯 单独构成一种独立的文件系统,管道对于管道两端的进程来说就是两个文件,但是它不是普通文件,也...原创 2020-07-16 14:04:10 · 473 阅读 · 0 评论 -
liunx操作系统——进程的创建
Linux主要提供了fork,vfork,clone三种进程创建方法,在Linux源码中,这三个的执行过程是执行fork(),vfork(),clone()时,同过一个系统调用表映射到sys_fork(),sys_vfork(),sys_clone(),然后三个函数中去调用do_fork()去做具体的创建进程工作,获取进程每个进程都有一个ID,系统调用getpid可以得到进程的ID,而get...原创 2019-08-09 15:57:09 · 435 阅读 · 0 评论 -
用链表和文件编写一个c语言通讯录
用c语言的链表和文件编写一个通讯录,下面是代码#include<stdio.h>#include<string.h>#include<stdlib.h>#include<sys/types.h>#include<sys/stat.h>#include<fcntl.h>#include<malloc.h&g...原创 2019-07-28 20:38:18 · 962 阅读 · 7 评论 -
嵌入式c++学习——静态成员的使用方法
static修饰的成员称为静态成员,它分为两种静态数据成员和静态函数成员它们的书写方式分别为 static int a ;static void fun() ;静态成员变量static成员变量属于类,不属于某个具体的对象,即使创建多个对象也只能分配一个空间,static成员变量必须在类的声明外部初始化如#include <iostream>using namespace...原创 2019-08-01 19:50:29 · 256 阅读 · 0 评论 -
linux系统调用——文件操作(一)
@[linux系统调用——文件操作所谓系统调用是指操作系统提供给用户的一组“特殊”的接口,用户程序可以通过这组“特殊”的接口来获得操作系统内核提供的服务系统调用并不直接与程序员进行交互,与程序员进行直接交互的是用户编程接口——API问:为什么用户程序不能直接访问内核答:资源不能的到保护,两个或多个应用程序同时访问会产生死锁现象。(内核是提供服务的,但不能直接提供用户程序,简单来说,银行是...原创 2019-07-16 15:44:09 · 803 阅读 · 1 评论 -
嵌入式c++学习——c++中的引用(一)
在生活中,一个人常常有多个称呼,人们可以根据称呼联想到这个人,不管是名字,学号,还是别名都代表这个人,那么在程序中,一个变量代表着一块连续的内存空间,我们定义一个整型变量a,则a代表一块四个字节的内存空间,他的首地址是0x1000 ,那么我们是否可以用另一个名称代表这一块空间呢,有人会想到指针,用指针指向这一块空间,但跟我们说的别名是两回事,在c语言中,定义一个指针p指向变量a,p并不代表...原创 2019-07-24 14:30:54 · 434 阅读 · 0 评论 -
linux系统调用——文件操作(二)
带缓存的I/O操作标准的I/O库提供缓冲的目的是尽可能地减少使用read和write的调用次数,它也是对每个I/O流自动的缓冲管理,从而避免应用程序需要考虑这一点所带来的的麻烦,不幸的是,标准I/O库最令人迷惑的也是缓冲fopen函数fopen函数用于打开文件fopen函数使用说明表头文件#include <stdio.h>定义函数FILE *fopen...原创 2019-07-17 15:12:18 · 171 阅读 · 0 评论 -
1.建立一个类PrimeNUM,求指定数据范围内的所有素数(质数)
1.建立一个类PrimeNUM,求指定数据范围内的所有素数(质数)。具体要求如下:(1)私有数据成员int data[25]:依次存放在指定范围内求出的所有素数。int low,high:存放指定的数据范围的下限和上限。int num:存放low与high之间的素数个数。(2)公有成员函数PrimeNUM(int _low,int _high):构造函数,用参数_low和_high初始...原创 2019-07-24 15:59:57 · 3875 阅读 · 0 评论 -
2.建立一个类SUM,求二维数组外围各元素的和,并且输出数组各元素及所求之和。具体要求如下: (1)私有数据成员 int a[4][4]:二维数组,存放要处理的数据。 int s:存放数组a外围各元
2.建立一个类SUM,求二维数组外围各元素的和,并且输出数组各元素及所求之和。具体要求如下:(1)私有数据成员int a[4][4]:二维数组,存放要处理的数据。int s:存放数组a外围各元素的和。(2)公有成员函数SUM(int b[4][4]):构造函数,用数组b初始化数组a。void process():求二维数组外围各元素的和s。void print():按行列方式输出数组...原创 2019-07-24 16:54:08 · 809 阅读 · 0 评论 -
vim配置文件(分享两篇)——vimrc
vim配置文件学liunx c/c++提高效率的一个文件,我们只需在根目录下,运行vim .vimrc然后把下面的代码复制保存即可一"winpos 5 5 " 设定窗口位置 "set lines=40 columns=155 " 设定窗口大小 "set nu " 显示行号 set go= " 不要图形按钮 ...转载 2019-07-20 09:37:54 · 283 阅读 · 0 评论 -
3.建立一个矩阵类Matrix,存储一个4*4的矩阵并能在矩阵中查找某数。要求如下: (1)私有数据成员 int p[4][4]:存储一个4*4的矩阵的值。 int n:矩阵的行数。 int x:存储
3.建立一个矩阵类Matrix,存储一个44的矩阵并能在矩阵中查找某数。要求如下:(1)私有数据成员int p[4][4]:存储一个44的矩阵的值。int n:矩阵的行数。int x:存储根据查找要求在矩阵中要查找到的某数。int row,col:存储该数所在的行、列值。(2)公有成员函数构造函数:初始化n的值为4,x、row、col为0。void input(int a[][4]...原创 2019-07-24 18:59:37 · 1292 阅读 · 0 评论 -
嵌入式c++学习——c到c++的扩展(一)
一,命名空间一个中大型软件往往又饿很多程序员共同完成,会使用大量的变量和函数,会产生变量或函数的冲突,为了解决合作开发时或者不同代码段之间的命名冲突,c++引入了命名空间(namespace)的概念命名空间将全部作用域分成不同的部分不同的命名空间可以相互嵌套全局作用域也被称为默认命名空间不同命名空间的标识符可以同名但不会冲突二,命名空间的使用1.命名空间的定义namespace...原创 2019-07-20 15:47:04 · 774 阅读 · 0 评论 -
嵌入式数据库
嵌入式数据库的名称来自其独特的运行模式。这种数据库嵌入到了应用程序进程中,消除了与客户机服务器配置相关的开销。嵌入式数据库实际上是轻量级的,在运行时,它们需要较少的内存。它们是使用精简代码编写的,对于嵌入式设备,其速度更快,效果更理想。嵌入式运行模式允许嵌入式数据库通过 SQL 来轻松管理应用程序数据,而不依靠原始的文本文件。嵌入式数据库还提供零配置运行模式,这样可以启用其中一个并运行一个快照S...原创 2019-07-18 15:33:44 · 4406 阅读 · 0 评论