编程高级进阶
物联网小镇
这个作者很懒,什么都没留下…
展开
-
滤波算法代码源码
#include "pch.h"#include <opencv2/core/core.hpp>#include "opencv2/imgproc/imgproc.hpp"#include <opencv2/highgui/highgui.hpp>#include <stdio.h>#include <iostream>using namespace cv;using namespace std;Rect select;bool sele原创 2021-12-22 00:49:34 · 316 阅读 · 0 评论 -
opencv视频模糊处理
//视频分帧#include <opencv2/opencv.hpp>#include <tchar.h>#include <stdio.h> #include <iostream> #include <math.h> #include <ostream>#pragma warning(disable:4996)using namespace std;using namespace cv;string read_原创 2021-12-06 21:37:42 · 624 阅读 · 0 评论 -
私钥解析
https://blog.csdn.net/ryf1099030083/article/details/84857344,文章链接3082025c # 标签头020100 # 整型 长度 为 0 (0x00),内容:version028181 # 整型 长度 为 129 字节 (0x81)内容:模数 n (modulus)00e7b0dd45eba985ea1eb2fd7a7237e654ff0e40c9e5818d9348aa2df7fc04e7e2a...原创 2021-04-26 11:00:42 · 756 阅读 · 1 评论 -
华为机试题1:计算字符串最后一个单词的长度,单词以空格隔开。
输出一个整数,表示输入字符串最后一个单词的长度。#include "stdafx.h"#include<iostream>#include<string>using namespace std;int main(int argc, char* argv[]){ string s=""; char str[100]={0}; int length=0; //cin>>s; //cin.getline(str,length); //原创 2021-03-21 13:50:30 · 194 阅读 · 0 评论 -
base64的c语言实现方法
base64.h/********************************************************************文件名 : Base64.h描 述 : Base64编码,解码版 权 :作 者 :修改记录: 日期 修改人 修改内容 2014-01-04 13:31 创建******************************************************************原创 2021-02-10 00:11:34 · 2388 阅读 · 0 评论 -
C++和服务器交互的几个文件代码
cjson.h文件在这里插入代码片/* Copyright (c) 2009 Dave Gamble Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, i原创 2021-01-14 13:12:44 · 456 阅读 · 1 评论 -
2020年华科计算机考研机试题答案(没弄懂题目的意思)
2020年华科研究生复试机试题,包含测试数据和题目,里面是文档和要所报文件。供考研学子学习使用。此数据量有点大,涉及到链表,数据转换,和容器。在这里插入图片描述在这里插入代码片// HK2020ProAndAns.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include <iostream>#include <fstream>#include原创 2020-05-13 15:14:30 · 1616 阅读 · 2 评论 -
编程训练计划
1.C语言编程实例原创 2020-05-12 09:30:11 · 180 阅读 · 0 评论 -
c++/c SM4加密解密算法代码实现
#include <openssl/sms4.h> int main(void) { //加密参数初始化 sms4_key_t sms4_key_enc; unsigned char *plain_text = { 0 }; unsigned char *key = "01234567891234560123456789123456"; un...原创 2020-05-05 20:24:39 · 6475 阅读 · 8 评论 -
ReadFile功能
8分钟阅读时长从指定的文件或输入/输出(I / O)设备读取数据。如果设备支持,则在文件指针指定的位置进行读取。此功能设计用于同步和异步操作。有关专门为异步操作设计的类似功能,请参见ReadFileEx。BOOL ReadFile( HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRe...原创 2019-12-24 22:10:03 · 3879 阅读 · 0 评论 -
#ifdef _DEBUG
#ifdef _DEBUG#endif这是条件编译,即如果有#define _DEBUG这两个函数会编译,否则忽略,当你用debug生成时(相对于release)开发环境则自动的加上这个宏定义,这两个函数有效。...原创 2019-12-24 11:52:02 · 864 阅读 · 0 评论 -
GetOverlappedResult取操作结果
GetOverlappedResult这个函数的主要作用不过是将Overlapped返回的结果进行一次简单的分析而已。dwErrorRet = WaitForSingleObject(overlapped.hEvent, milliseconds);if(WAIT_OBJECT_0 == dwErrorRet)//WAIT_OBJECT_0 0x00000000 :指定的对象出有有信号状态{...原创 2019-12-20 10:11:19 · 571 阅读 · 0 评论 -
import的用法
#import比#include进步的一点就是能减少重复引用了,比如说你在A.h文件中#import C.h,B.h中也#import C.h,然后你在D.h文件中#import A.h #import B.h,是不会有关于C.h文件重复引用的问题的。具体的方法是通过#ifndef也就是条件编译来实现。...原创 2019-12-16 20:38:26 · 1288 阅读 · 0 评论 -
Windows API之ReadFile的用法实例
char szReadBlock[1024] = { 0 } ;DWORD dwNumberOfBytesTransffered = 0 ;OVERLAPPED overlapped ;memset(&overlapped, 0, sizeof(overlapped));if(ReadFile(m_hReadHandle, szReadBlock, sizeof(szReadBlo...原创 2019-12-16 20:23:46 · 2110 阅读 · 0 评论 -
比特率和波特率的公式解析
比特率和波特率的公式为:比特率=波特率单个调制状态对应的二进制位数波特率:如果某一秒内传送100个字节数据给别人,那么波特率就为100,而明显的是一个字节是8bit,所以比特率为1008=800.一般和终端通讯的时候,如果要用串口通讯就要设置波特率,而且波特率必需要相等,因为主机这边设置波特率后就会决定主机这边发送包的速率,如果和终端不一样的话就会通讯不成功。...原创 2019-12-06 17:00:01 · 12507 阅读 · 0 评论 -
vc6.0出现无法解析错误
在写程序的时候报了下面一些错误,之前以为是某个函数没有被定义,只是申明了,一般在vs里面申明了没定义是被报错的,但vc6.0没有报错,而相似 的报错结果的原因是没有添加一个工程进来。之前在别的程序里面添加一个类到当前目录,如果引用了头文件而没有添加到工程中的话就会出现下面无法解析的错误Linking…MposSnWrite.obj : error LNK2001: unresolved ext...原创 2019-12-06 16:54:22 · 270 阅读 · 0 评论 -
oledb32.dll的作用
oledb32.dll 相关的错误可能源于多种不同原因。比如,错误的应用程序、 oledb32.dll 被删除或放错位置、被您 PC 上存在的恶意软件破坏、损坏的 Windows 注册表等。最常出现的错误信息是:程序无法启动,因为您的计算机缺少 oledb32.dll 。尝试重新安装程序来解决这个问题。启动 oledb32.dll 发生错误。无法找到指定的模块加载 oledb32.dll ...原创 2019-12-04 11:10:32 · 576 阅读 · 0 评论 -
SetupDiGetClassDevs函数详解
SetupDiGetClassDevs函数SetupDiGetClassDevs 函数返回一个包含本机上所有被请求的设备信息的设备信息集句柄。语法//C++:HDEVINFO SetupDiGetClassDevs( _In_opt_ const GUID *ClassGuid, _In_opt_ PCTSTR Enumerator, _In_opt_ ...转载 2019-11-28 16:04:28 · 3068 阅读 · 1 评论 -
与子密钥Ki异或
异或,英文为exclusive OR,缩写成xor异或(xor)是一个数学运算符。它应用于逻辑运算。异或的数学符号为"⊕",计算机符号为"xor"。其运算法则为:a⊕b = (¬a ∧ b) ∨ (a ∧¬b)如果a、b两个值不相同,则异或结果为1。如果a、b两个值相同,异或结果为0。异或也叫半加运算,其运算法则相当于不带进位的二进制加法:二进制下用1表示真,0表示假,则异或的运算法则为:...原创 2019-11-28 14:37:18 · 373 阅读 · 0 评论 -
INVALID_HANDLE_VALUE的意思和用法
assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行。ASSERT(IsOpen());但 IsOpen()定义为BOOL IsOpen() const { return m_hComm != INVALID_HANDLE_VALUE; };//INVALID_HANDLE_VALUE若前面得到了一个句柄,则应关闭掉INVALID_H...原创 2019-11-28 08:56:34 · 7310 阅读 · 0 评论 -
C++ 中在函数的前面加上static的作用
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。原文链接:https://blog.csdn.net/zz_caiqing/article/details/811266591:C语言中static的作用:在函数的返回类型前加上关键字static,函数就被定义成为静态函数。函数的定义和声明默认情况下是extern的,但静态函数只是在声明他...原创 2019-11-27 17:33:16 · 941 阅读 · 0 评论 -
#define、#undef、#ifdef、#ifndef、#if、#elif、#else、#endif、defined
本文主要介绍c语言中条件编译相关的预编译指令,包括 #define、#undef、#ifdef、#ifndef、#if、#elif、#else、#endif、defined。#define 定义一个预处理宏#undef 取消宏的定义#if 编译预处理中的条件命令,相当于C语法中的if语句#ifdef ...原创 2019-11-27 17:13:48 · 804 阅读 · 0 评论 -
USB和串口(COM)的区别,以及相互转换
原文地址:USB和串口(COM)的区别,以及相互转换 作者:shaohui973有几个概念玩嵌入式的同志经常搞混。也不怨谁,现在的卖家为了一点可怜的销量都在故意混淆串口的概念。如果你发现本文有哪里含糊,或者任何一点有可能影响理解的地方,请留言,我会修正以便帮助后来的朋友。Point (所有要点都在这,请仔细阅读):1、串口、COM口是指的物理接口形式(硬件)。而TTL、RS-232、RS-...原创 2019-11-26 11:28:32 · 2598 阅读 · 0 评论 -
对象传参数
之前写的程序里面有这么一句:CADORecordset Rs(&m_Ado);一直不明白(&m_Ado)有什么作用,在前面CADODatabase m_Ado;已经申明了m_Ado的变量,那么说明CADORecordset Rs(&m_Ado);这么写的目的就是为了给m_Ado传递参数,&m_Ado表示一个地址,说明传的也是一个CADODatabase类型的指针参数...原创 2019-11-26 10:55:01 · 161 阅读 · 0 评论 -
C/C++使用openssl进行摘要和加密解密(md5, sha256, des, rsa)
https://www.cnblogs.com/findumars/p/7252839.html原创 2019-11-25 18:43:35 · 593 阅读 · 0 评论 -
vc6.0注释功能的脚本快捷键设置代码
在目录里面创建一个空文本,将名字命名为comment.dsm在文件里面添加一下代码:Sub CustomCommentOut() 'DESCRIPTION: 注释/取消注释宏,可处理VB和C++、Java注释 Dim win set win = ActiveWindow If win.type <> "Text" Then ...原创 2019-11-25 14:36:31 · 183 阅读 · 0 评论 -
#pragma pack(1)的作用
#pragma pack(n)解释一:每个特定平台上的编译器都有自己的默认“对齐系数”(也叫对齐模数)。程序员可以通过预编译命令#pragma pack(n),n=1,2,4,8,16来改变这一系数,其中的n就是你要指定的“对齐系数”。规则:1、数据成员对齐规则:结构(struct)(或联合(union))的数据成员,第一个数据成员放在offset为0的地方,以后每个数据成员的对齐按照#p...原创 2019-11-21 15:52:47 · 1470 阅读 · 0 评论 -
RSA秘钥问题详解
整体步骤 首先在pc端需要实现的步骤1.将程序读取到2.将程序加密成32字节的哈希值3.通过密文将哈希值进行加密,变成256字节的密文4.将程序和密文一起发给终端终端需要做的步骤1.解决256字节的密文,翻译成32字节的哈希值2.将程序翻译成32字节的哈希值,然后与上一步操作的哈希值进行比较,如果一样,就说明加密和解密是成功的,否则不接受此次下载知乎链接 https://zhuan...原创 2019-11-18 19:32:38 · 287 阅读 · 0 评论 -
关于程序中的操作符左移和右移问题
程序中经常会看到<< 5或者>>等符号,这表示左移和右移操作。比如你一串数字是123456789,那么你左移5位(<< 5)就会得到678900000,如果你右移5位(>>5 )就会得到000001234.按理说应该将123456789全部换成0和1,因为移的位数都是以比特位(b)为单位,这样写是便于理解。...原创 2019-11-18 15:54:22 · 549 阅读 · 0 评论 -
USB的pid和vid以及usb路径名字之间的关系
PID,VID又是什么意思?实际上是一个USB设备在Windows系统下作为其唯一标识的ID,准确的名称叫做DevicePath(usb路径名字)。DevicePath全称为USB\VID_05A9&PID_2800\5&1BFE1C47&0&8,USB代表设备类型,5&1BFE1C47&0&8代表设备连接位置,包括总线位置,控制器位置,控制...原创 2019-11-13 22:14:56 · 2747 阅读 · 0 评论 -
C++ MFC界面读写USB HID设备数据程序
C++ MFC界面读写USB HID设备数据程序 发一个简单易用的界面,用来对USB HID设备(比如说游戏手柄,控制面板等)读写数据,一般情况下面板上有一些LED,可以帮助我们测试读写是否正确。另外,需要可以修改vendorID和prodcutID,这样一个界面,可以用于测试多个HID设备。过程分成3步:1: 列举出所有的HID设备,2: 循环读取HID设备数据,3: 向HID设备写数据,下面...原创 2019-11-05 20:34:29 · 2419 阅读 · 0 评论 -
C++命名空间 namespace的作用和使用解析
(此博文为转载于https://www.cnblogs.com/zhoug2020/p/5972439.html)一、 为什么需要命名空间(问题提出)命名空间是ANSIC++引入的可以由用户命名的作用域,用来处理程序中 常见的同名冲突。在 C语言中定义了3个层次的作用域,即文件(编译单元)、函数和复合语句。C++又引入了类作用域,类是出现在文件内的。在不同的作用域中可以定义相同名字的变量,互...原创 2019-11-04 10:16:51 · 135 阅读 · 0 评论 -
软件和硬件的关系以及软件调动硬件的工作原理
软件是一个纯虚拟的东西,他本身就是一块内存,软件在运行时内存在RAM中(目前是这么理解的),运行的时候,主要是通过相应的接口去调用某一块内存,以改变这块内存的数据。改变这块内存的数据的目的就是为了别人调用他的时候能够取到自己想要的数据。 当某些API拿到数据之后呢?就会调动相应的驱动(这个时候,那个驱动调用数据其实是软件已经写好了的),比如摄像头打开镜头进行录像,声音播放器进行音乐播放等。...原创 2019-11-02 10:43:08 · 2278 阅读 · 0 评论 -
c++面试题之标准模板库
STL的版本很多,常见的有HP STL、PJ STL、 SGI STL等。STL可分为容器(containers)、迭代器(iterators)、空间配置器(allocator)、配接器(adapters)、算法(algorithms)、仿函数(functors)六个部分。在实际的开发过程中,数据结构本身的重要性不会逊于操作于数据结构的算法的重要性,当程序中存在着对时间要求很高的部分时,数据结构...原创 2019-11-01 10:34:29 · 775 阅读 · 0 评论 -
GetOverlappedResult函数详细解答
GetOverlappedResultGetOverlappedResult函数返回指定文件、指定管道或通信设备上重叠操作的结果。视窗95:此功能只适用于通讯设备或使用DeviceIoControl功能打开的档案。BOOL GetOverlappedResult (HANDLE hFile、//文件、管道或通信设备的句柄lpoverllapped, //指向重叠结构的指针LPDWORD...原创 2019-10-31 14:20:19 · 7684 阅读 · 0 评论 -
Windows API之WriteFile函数详细解答
WriteFileWriteFile函数将数据写到一个文件中,它是为同步和异步操作而设计的。函数在文件指针指示的位置开始向文件写入数据。写操作完成后,文件指针将根据实际写入的字节数进行调整,除非文件是用FILE_FLAG_OVERLAPPED打开的。如果文件句柄是为重叠的输入和输出(I/O)创建的,则应用程序必须在写操作完成后调整文件指针的位置。BOOL WriteFile (处理hFile...原创 2019-10-31 11:52:06 · 12131 阅读 · 0 评论 -
CreateThread创建线程函数详细讲解
CreateThreadCreateThread函数创建一个要在调用进程的地址空间中执行的线程。(MSDN讲解如下)处理CreateThread (LPSECURITY_ATTRIBUTES lpThreadAttributes, //指向安全属性的指针dwStackSize, //初始线程堆栈大小说明:LPTHREAD_START_ROUTINE lpStartAddress, //指...原创 2019-10-31 10:08:31 · 2641 阅读 · 0 评论 -
VC 6.0中添加库文件和头文件
VC 6.0中添加库文件和头文件分类: VC/VS加头文件包含VC6.0中:VC6.0默认include包含路径:Tools>Options>Directories>Include files。对于特定项目的头文件包含,在“Project Setting>C/C++ >Category:(选Preprocessor)>Additional includ...原创 2019-10-31 09:45:49 · 1792 阅读 · 0 评论 -
ASSERT(IsOpen());
assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行;assert(判断条件语句)原创 2019-10-30 13:37:47 · 461 阅读 · 0 评论 -
WaitForSingleObject的用法详细介绍
Windows提供了许多内核对象来实现线程的同步。对于线程同步而言,这些内核对象有两个非常重要的状态:“已通知”状态,“未通知”状态(也有翻译为:受信状态,未受信状态)。Windows提供了几种内核对象可以处于已通知状态和未通知状态:进程、线程、作业、文件、控制台输入/输出/错误流、事件、等待定时器、信号量、互斥对象。你可以通知一个内核对象,使之处于“已通知状态”,然后让其他等待在该内核对象上的...原创 2019-10-30 11:43:58 · 1717 阅读 · 1 评论