自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Wangguang_的博客

嵌入式开发工程师

  • 博客(168)
  • 资源 (1)
  • 收藏
  • 关注

原创 Ubuntu升级Python报错pydtrace_probes.h: No such file or directory

pydtrace_probes.h: No such file or directory

2022-09-15 22:03:24 273 1

原创 win10安装home assistant问题

使用pip安装homeassistant遇到了下列问题,始终无法成功安装ciso8601。系统中未安装C++的编译工具,导致pip无法编译相关代码

2022-09-14 23:30:44 245

原创 英特尔Ax210 有无线没有蓝牙功能

解决方法:断开电源连接线,10s后再开机,蓝牙出现问题现象无法在设备管理器中找到蓝牙设备更新驱动无效打开服务中的蓝牙支持,无效排除设备问题,之前是可以用蓝牙的

2022-05-18 23:49:38 2190 3

原创 amd的5700g无法进入系统和pe(锁四个核心可进入)

最近配的主机,配置如下:铭瑄b550m电竞之心、5700g、芝奇幻光戟买固态硬盘时卖家已经装好了系统,装完机器进入bios之后,以为一次点亮已经稳了,不过加载系统时,win10的logo一亮,直接重启最开始以为系统没有装好,准备用pe再装一个系统,发现无论是pe还是微软的系统盘,都无法加载排除问题的过程:更换内存和内存插槽,无效在笔记本使用pe或启动盘,可以进入在笔记本完成固态里系统的制作,无效更新主板bios,无效无奈换了个新的主板,发现还是一样的问题最后在翻找教程时看到有人提了一嘴

2022-05-15 23:31:13 263

原创 戴尔灵越7572重装Windows 提示:Windows无法安装到这个磁盘,选中的磁盘采用gpt分区形式

文章目录电脑型号启动U盘问题描述问题原因解决方案电脑型号戴尔灵越7572启动U盘微软官方软件制作的启动盘问题描述在安装Windows过程中,格式化C盘之后,提示:Windows无法安装到这个磁盘,选中的磁盘采用gpt分区形式问题原因由于硬盘格式为GPT分区表,而您的U盘启动引导方式为“Legacy”模式,导致了开机引导方式和磁盘数据结构不匹配导致的问题解决方案修改笔记本BIOS设置开机一直按F2进入BIOS,按F2进入BIOS界面,切换到secure BOOT页面,选择secure

2022-03-13 23:34:52 2623

原创 打开Xmind提示The contiolrator Userslwangappication DatalXMindlconfiquration-cathy win32-R3.79.2019120523

打开Xmind 8弹出弹窗问题描述在网上搜索的绿色破解版Xmind8在访问软件时无法打开,并弹出错误提示无法打开软件,弹窗如下:根据弹窗内容,找到指定的文件夹(C:\Users\wang\Application Data),发现其为快捷方式,且点击提示拒绝访问分析问题认为是该软件需要在该路径下创建启动依赖文件,但该文件夹拒绝访问,导致无法启动观察到其上方文件夹AppData可正常访问,尝试修改软件的配置文件,问题解决解决方法进入Xmind安装路径,用记事本打开XMind.ini文件,将

2021-11-24 12:59:11 158

原创 使用GDB Sever调试程序提示Warning: Cannot insert breakpoint X. Cannot access memory at address 0xXXXXXX

问题

2021-11-18 00:09:12 1516

原创 编译报错 error: expected ‘;’, ‘,’ or ‘)’ before ‘switch’

问题在编译程序时遇到编译报错,报错内容如下所示:func.c:4:16: error: expected ‘;’, ‘,’ or ‘)’ before ‘switch’核心错误代码#include <stdio.h>#include <stdlib.h>void func(int *switch){ printf("%d\n", switch);}int main(){ int *a; func(a);}

2021-11-01 20:24:43 441

原创 云笔记推荐----wolai

云笔记推荐废话不多说,今天推荐的主角是----wolai(我来)笔记官网界面如下:wolai作为markdown的忠实爱好者,我最喜欢的markdown风格笔记是Typora,因为它可以随写随看,不用左右分开(个人认为左右分割十分难受)不过它也是有缺点的,就是只能本地使用,无法存放到云端作为一个程序员,能够在公司和家里同时编辑文档是多么幸福的一件事,为此我不得不放弃Typora,选择有道云有道云的优点自不必说,缺点就是markdown不支持上传本地图片,并且是丑陋的分割式编辑框而我来免费版即

2021-09-17 23:29:51 525

原创 使用TortoiseSVN解决代码冲突

前言在项目开发过程中,通常会使用SVN或GIT进行项目管理,在团队协同开发过程中就难免会出现代码冲突的情况在实际开发中,作为初级开发人员,刚开始遇到冲突一般都是找导师解决,害怕自己的操作影响到了远端代码,但总是找别人帮忙总不是长久之计,遂决定系统整理一下冲突解决的方法,经过尝试,发现解决方法并没有自己想象的困难情景模拟我将使用两份代码模拟两个程序员共同开发的场景修改一个版本的代码并将其提交到远端,在本地修改相同位置的代码之后进行更新操作,收到代码冲突的提示SVN或GIT解决冲突的原理就不再赘述

2021-09-05 00:14:16 972

原创 Qt开发的文本解析工具

报文解析工具功能简介支持自定义导入文件修改关键字多线程解析文本保存解析之后的文本到新的文件一键打开文件保存文件夹核心功能相关代码如下:自定义导入文件bool MainWindow::openLogFile(){ //文本导入框 QString strPath = QFileDialog::getOpenFileName(NULL,QString::fromUtf8("选择文件"),"",QObject::tr("All(*.*)")); if(strPath

2021-07-14 00:00:35 420 1

原创 使用enigma virtual box打包Qt程序提示未包含Qt5Core.dll

使用enigma virtual box打包Qt程序提示未包含Qt5Core.dll今天使用上述软件将一个Qt程序打包之后在本地运行正常,但是在朋友电脑中运行提示未包含Qt5Core.dll库解决方法:首先确认自己使用windeployqt.exe打包后的程序,朋友的电脑运行提示缺少以上三个库:libgcc_s_seh-1.dlllibstdc++ -6.dlllibwinpthread-1.dll根据缺少的库文件到Qt的安装路径下拷贝出指定的库文件,例如:D:\Qt\Qt5.12.10\

2021-07-13 23:41:41 558 2

原创 Linux实现定时的方法

文章目录Linux环境下实现定时的方法sleep和usleepLinux环境下实现定时的方法sleep和usleepsleep函数是我们编程中非常常见的,它可以使得进程睡眠指定时间之后再执行它的参数分别为秒级(sleep)和微秒级(usleep 1000000us为1s)sleep和usleep的头文件和函数原型如下所示:#include <unistd.h>unsigned int sleep(unsigned int seconds);int usleep(useconds

2021-06-27 00:54:02 1985 1

原创 Linux 创建TCP连接流程

文章目录Linux创建TCP的步骤服务端客户端TCP建立流程示例代码Linux创建TCP的步骤TCP编程需要客户端和服务器两套编码,其创建TCP的流程也是不完全一致的服务端使用socket函数创建一个套接字使用setsockopt函数设置套接字的属性使用bind函数绑定IP地址、端口信息到套接字上使用listen函数监听指定端口使用accept函数接收客户端的连接请求使用send/recv和read/write函数进行数据的收发使用close函数关闭网络连接和监听客户端使用so

2021-06-08 23:45:01 868 1

原创 socket函数详解

文章目录网络编程学习笔记socket函数参数详解参数一:af参数二:type参数三:protocol带外数据错误说明程序示例网络编程学习笔记socket函数头文件: #include <sys/socket.h>函数原型:int socket(int af, int type, int protocol);返回值:函数调用成功,返回套接字的文件描述符,失败返回-1socket函数调用成功会创建一个协议族为af,协议类型为type,协议编号为protocol的套接字参数详解参数

2021-06-07 23:28:03 791 1

原创 有道云笔记使用技巧

生成目录在目录中使用目录可以帮助你快速定位到想要查看的内容,对于长文章尤其友好如果想要在有道云笔记中生成目录,需要在文章开头添加 [toc]效果如下:回车使用有道云的markdown时,注意到一个问题,在编辑界面明明输入了换行,但是预览不生效,于是只能连打两个换行符,十分的不美观解决方案:在行尾输入两个空格即可完成换行效果如下:放大字号使用标签框中需要改变的文本即可<font size=4></font>...

2021-05-31 11:30:34 1329

原创 Source Insight提示行尾不一致

xx\xx\filename has line endings that are not consistent.Do you want to normalize it ?

2021-05-27 09:50:05 2748

原创 软件工程本科毕设:基于图像的火灾检测

文章目录基于图像的火灾检测个人情况及相关技术开发环境软件平台硬件平台系统存在的问题系统架构系统基本工作流程系统运行效果代码实现上位机代码下位机代码数据库结构系统硬件展示基于图像的火灾检测个人情况及相关技术双非普通本科,2017届软件工程移动设备应用开发方向,毕设所用技术:Qt、SQLite、OpenCV、树莓派毕业设计题目是自己选定的,导师负责审核,由于学校学习嵌入式软件开发的同学较少,所以审核很容易本博客为分享备忘性质,旨在为需要的同学提供思路,不喜勿喷开发环境软件平台开发平台:Ubun

2021-05-26 00:01:57 819 4

原创 使用树莓派连接笔记本热点

文章目录使用树莓派连接笔记本热点电脑热点设置树莓派端设置验证连接是否有效注意点:使用树莓派连接笔记本热点电脑热点设置Windows打开网络设置,进入移动热点设置,打开移动热点的开关(笔记本必须正常建立网络连接,有线无线均可)具体设置如下:需要注意的是:树莓派不支持5GHz频段的Wifi信号,因此必须将热点设置为2.4GHz树莓派端设置使用树莓派连接显示器,并接如键盘鼠标,搜索电脑热点并连接成功连接后电脑端会显示树莓派的IP地址,如下图所示: 验证连接是否有效使用windows尝试与树莓

2021-05-04 20:57:35 1220

原创 C和C++面试秘籍(董山海)分享

C和C++面试秘籍(董山海)分享最近在找面试相关的知识点,找到一本不错的书籍,过程比较艰难,特将其分享,需要请自取链接:https://pan.baidu.com/s/160OAtCsDCI-js8GYy_QhSQ提取码:dfr1如果链接失效请联系本人:1835833302@qq.com...

2021-01-28 22:57:49 311 2

原创 C语言不定参数函数

文章目录C语言不定参数不定参数不定参数实现原理示例代码C语言不定参数众所周知,C语言不支持函数重载,支持函数重载的是C++。究其原因,C语言在编译函数之后,将"_函数名"存放到函数库,而C++在编译函数之后,将"_函数名_参数类型_参数类型"存放到函数库但是,在查询fcntl函数时,却发现其函数原型有多个int fcntl(int fd, int cmd);int fcntl(int fd, int cmd, long arg);int fcntl(int fd, int cmd, struct

2021-01-07 15:02:06 662

原创 gcc 编译提示/usr/include/stdio.h:27:23: fatal error: features.h: No such file or directory

使用Ubuntu编译c程序时,编译器提示/usr/include/stdio.h:27:23: fatal error: features.h: No such file or directory # include <features.h>产生原因: 自己在安装一些库的时候破坏了GCC的编译环境解决方法: 安装gcc-multilib工具具体方法:终端输入sudo apt-get install gcc-multilib(Ubuntu)安装完毕之后重新编译程序,即可编译成功gc

2021-01-07 14:14:03 1729 2

原创 Qt程序运行之后不显示窗体

Qt程序运行之后不显示窗体原因:误将类成员函数名称命名为show在进行程序编写时,我发现程序执行之后程序只将qDebug打印的信息输出到控制台,但是没有显示程序窗体,经过排查发现自己定义了一个成员函数show用于输出指定信息QtCreator创建的项目的main.cpp中,默认程序内容如下:#include "mainwindow.h"#include <QApplication>int main(int argc, char *argv[]){ QApplication

2020-12-28 23:23:29 7533 9

原创 Qt日志重定向(将qDebug信息输出到界面控件)

Qt日志重定向程序日志对于输出程序运行信息有着非常重要的作用,它可以帮助程序员定位问题所在,输出程序运转状态等在使用QtCreator编写程序时,我们可以使用qDebug方便的将自己需要的信息输出,但是如果想将其显示到程序的控件上,又该怎样做呢?经过一番搜索,我找到了将qDebug重定向的方法,可以将其输出的信息自由的存放到ui控件或文件中(搜到的大部分教程都是将日志信息重定向到文件中,容易让人误以为它只能重定向到文件)qInstallMessageHandler由于本人开发环境为Qt5,因此本文

2020-12-28 22:39:57 5696 3

原创 树莓派和上位机使用TCP通信(字符串和图像传输)

文章目录树莓派和上位机使用TCP通信系统介绍字符串通信树莓派具体实现代码:Qt具体实现代码:程序执行图像发送树莓派具体实现代码:Qt具体实现代码:程序执行树莓派和上位机使用TCP通信系统介绍下位机: 树莓派作为下位机,IP地址为192.168.199.206,作为tcp的客户端(c实现),通信端口号为8888,上位机: Ubuntu(虚拟机)作为上位机,作为tcp的服务端(Qt实现),Qt版本为5.12,IP地址为192.168.199.149,通信端口为8888注意:该系统为单向通信,只能由

2020-12-24 23:56:16 3570 1

原创 OpenCV拍摄图像(C++)

OpenCV拍摄图像(C++):定时拍摄和按键拍摄使用摄像头进行图像拍摄是常见的需求,一般分为两种拍照方式:定时拍照和按键拍照如果你还没有完成Linux环境下使用OpenCV调用摄像头,请参考本人另一篇博客OpenCV读取摄像头定时拍摄...

2020-12-16 00:03:53 1443 1

原创 QCharts绘制柱状图,柱高和y轴数据刻度不匹配

QCharts绘制柱状图,柱高和y轴数据不匹配使用QCharts之前,需要确保自己在安装Qt组件时,选中了Charts这一组件如果需要使用QCharts绘制柱状图,需进行以下设置//在项目pro文件中添加以下内容QT += charts//在.h文件中添加以下内容,注意:需要将头文件及命名空间添加到ui命名空间之前,否则将提示错误#include <QtCharts/QChartView>#include <QtCharts/QBarSeries>#in

2020-11-25 23:48:32 1307

原创 树莓派安装OpenCV

树莓派安装OpenCV树莓派是一种ARM架构的小型Linux硬件设备,其中运行了一套完整的Linux系统,但是和X86架构不同的是,如果需要在树莓派安装OpenCV,需要交叉编译当然,如果交叉编译过于繁琐的话,可以直接将OpenCV的安装包拷贝到树莓派上,在树莓派直接编译,具体方法可参照本人博客:Linux 安装OpenCV本人实测编译树莓派3B速度大概为六个小时,还是可以接受的推荐开发环境:树莓派是自带WIFI模块的,只需要连接显示器之后,连接需要的WIFI,之后即可使用XShell等网络挂载,

2020-11-22 11:49:15 1720 1

转载 对象数据成员的初始值

对象数据成员的初始值对象的构造函数的作用是初始化类的成员变量,但是如果我们不显式定义构造函数,编译器就会给我们定义一个默认构造函数;这个默认构造函数中其实是什么都没有做的,如果这样,我们生成该类的对象之后,它的数据成员值为多少呢?具体程序如下:#include <iostream>using namespace std;class Base{public: int val;};Base b;int main(){ Base c; Base *ba

2020-09-27 23:57:56 1137

原创 函数的返回值存放在哪里

函数的返回值存放在哪里调用函数时,函数的返回值存放的位置具体在哪里呢?按照概念来说,函数的返回值应该放在被调用函数运行结束之后,主调函数可以有效访问的地方,也就是说,函数返回值应当存放在主调函数开辟的栈空间但是,计算机硬件的飞速发展使得CPU的通用寄存器字长在不断增长,个数也不断增多,因此在很多情况下,函数的返回值直接被存放在了CPU的通用寄存器中,而并非一定需要计算机的内存空间具体类型的返回值的存放位置如下所示:char(8bit):寄存器a1short(16bit):寄存器axint(32

2020-09-23 23:40:58 3644

转载 数据类型转换操作符:const_cast、static_cast、dynamic_cast以及reinterpret_cast

文章目录数据类型转换const_cast的用法使用const_cast需要注意的问题:static_constdynamic_castreinterpret_cast数据类型转换在c++编程中,我们经常需要使用到类型转换,但可能不熟悉c++内置的四种类型转换操作符它们分别是:const_cast、static_cast、dynamic_cast以及reinterpret_cast,它们的语法形式是统一的,type_cast_operator(expression)const_cast主要用于解除

2020-09-20 20:42:05 268

原创 C++宽字符类型wchar_t

C++宽字符类型wchar_t传统的字符数据类型为char,占用一个字节,存放的数据内容为ASCII编码,最多可以存放255种字符,基本的英文以及常用字符都可以涵盖随着计算机在国际范围内普及,大量使用其它语言的计算机用户也纷纷出现,传统的ASCII编码已经无法满足人们的使用,因此一种新的字符存放类型wchar_t应运而生wchar_t为宽字符类型或双字符类型,它占用两个字节,因此能够存放更多的字符wchar_t的使用实例如下所示:#include <iostream>using na

2020-09-20 15:49:39 3930

转载 explicit的用法

explicit的用法explicit关键字的作用是:禁止隐式调用类的单参数构造函数,主要禁用以下两种操作:禁止隐式调用拷贝构造函数禁止类对象之间的隐式转换类对象之间的隐式转换是指利用一个已经存在的其它类型的对象来创建本类的新对象,且不显式的调用类的构造函数类对象之间的隐式转换也很常见,例如:A a = 6;就是一个隐转换,它利用6创建一个A类的对象且没有显式调用A的构造函数A(66)隐式调用具体实例如下:#include <iostream>using namesp

2020-09-19 00:40:16 927

原创 C++拷贝构造函数

C++拷贝构造函数拷贝(复制)构造函数是类构造函数的一种,该构造函数只有一个参数,那就是此类的引用例如:类A创建了一个对象a1,并给它赋予特定的属性,之后程序需要创建一个和a1一样的对象,那么就可以使用A a2(a1);来创建相同属性的对象如果程序员不设计类的拷贝构造函数,则编译器就会自动生成默认的拷贝构造函数,一般情况下,默认拷贝构造函数从源对象逐字节复制到目的对象拷贝构造函数被调用的情况使用一个对象初始化另一个对象具体使用实例如下:#include <iostream&gt

2020-09-17 23:54:30 163

原创 子类使用connect之后提示父类没有槽函数

在子类中使用connect创建信号槽连接时,收到了错误提示如下:QObject::connect: No such slot Board::on_btn_SimpleClicked()问题十分简单,只需要在子类中添加Q_OBJECT即可,具体添加位置如下:class child : public father{ Q_OBJECTpublic: child();}但是,添加之后程序仍提示错误,原因在于没有将之前程序生成的中间文件删除,已经两次忘记清空中间文件,特记录备忘.

2020-09-14 21:22:53 270

原创 C语言函数调用过程(汇编分析)

C语言函数调用过程(汇编分析)函数调用主要的三个方面是函数名、参数列表和返回值,想要深入了解函数的调用机制,就需要深入底层,分析源文件的汇编码来分析函数调用的流程函数调用的步骤如下:函数参数传入函数栈帧开辟函数返回值函数栈帧回退所谓栈帧,就剩为一个函数调用单独分配的栈空间图片来源:简书金戈大王函数参数的传入和函数的返回值很好理解,它们函数输入和输出,但是函数栈帧的开辟和回退的具体作用又是怎样的呢?函数的本意是可以重复使用的代码块,在CPU执行程序时,是逐行执行的;如果遇到函数调用,

2020-09-13 23:08:36 777

原创 volatile的用法

volatile的用法volatile是“易变的”、“不稳定”的意思。volatile是C++的一个关键字,它用来解决变量读取的一些问题在单任务中,函数体内部,如果在两次读取变量之间没有修改变量值,则编译器会编译出的可执行文件进行优化因为访问寄存器的速度大于RAM的读取速度,所以编译器会减少读取RAM的优化;假如两次访问变量之间没有修改该值,则只会在第一次访问变量时访问RAM(从RAM中读取到的值存放到寄存器),以后会直接访问寄存器但是在多任务中,虽然在两次读取变量时数据未被修改,但是程序中的其它任

2020-09-10 23:38:49 522

原创 不同类型的class的长度

不同类型的class的长度在计算机中,一个数据类型是有固定的长度的,例如:int、float和double等基本类型的变量,但是一个类在计算机中占据多少内存空间呢?使用sizeof运算符可以获取一个数据的长度,我们可以使用该运算符可以计算出class的长度以及其不同状态下所占据的空间大小不同类的定义以及其长度获取代码如下:#include <iostream>using namespace std;class test{ int data; double d;};

2020-09-08 23:42:32 335

原创 mutable的用法

mutable的用法mutable的意思是"可变的",和const的意思正好相反,其作用也是解除常函数无法修改成员变量的限制,因此mutable关键字的使用频率并不高使用mutable需要注意的问题:mutable只能作用于类的非静态和非常量数据成员mutable关键字提示编译其该变量可以被类的const函数修改mutable关键字的使用实例如下:#include <iostream>using namespace std;class student{public:

2020-09-07 22:18:08 594

原创 const的用法

const的用法const是C++语言引入的一个关键字,是“不变的”、“常量”的意思。用const定义的变量,实际上是定义了一个“只读变量”,const组合变量的用法比较容易理解,但是如果配合指针、引用和函数等,就不容易理解,接下来由四个方面介绍const的用法1. const的位置const的位置比较灵活,一般来说,除了修饰一个类的成员函数外,const不会出现在一条语句的最后const使用实例:#include <iostream>using namespace std;in

2020-09-06 17:03:46 346

Community_Manage_System.zip

(如果没有积分,可以找到我的博客,里面有我的github账号,已开源)基于Qt的社区管理系统,包括数据库、多界面切换等,适合课程设计或期末作业,稍加更改即可调整为各种管理系统,方便快捷,不知道够没够五十个字

2020-05-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除