自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 收藏
  • 关注

原创 枚举类型相关知识

定义一个枚举类型,需要使用 enum 关键字,后面跟着枚举类型的名称,以及用大括号 {} 括起来的一组枚举常量。每个枚举常量可以用一个标识符来表示,也可以为它们指定一个整数值,如果没有指定,那么默认从 0 开始递增。第一个元素spring ,默认值为 0,summer 的值为 3,其他元素为前一个元素值加1,所以,autumn 的值为 4,winter 的值为 5。枚举是 C 语言中的一种基本数据类型,用于定义一组具有离散值的常量,它可以让数据更简洁,更易读。C enum(枚举)

2026-07-16 16:44:11 210

原创 cppcheck安装及使用

打开终端cmd,执行代码:cppcheck –version,会打印cppcheck版本号,如下截图2;如果没有版本号输出,可以手动将cppcheck路径添加至环境变量path路径下,并重启电脑;如图1,windows64下载到本地以后,双击运行上面的setup软件,根据提示安装;安装以后建议重启,这一步主要是为了将cppcheck安装路径添加到path路径下;cppcheck是一款免费开源、跨平台的 C/C++ 静态代码缺陷检查工具。cppcheck 官方手册。

2026-07-16 16:22:13 411

原创 三目运算千万千万不要犯的错误

假设 double b=((tmp < 0)?0 : tmp);这里b值运算结果用在第2次三目运算中的tmp值;实际项目中,有一个bug,算法校正后图像上出现异常点,分析定位后,

2026-07-16 16:05:46 162

原创 指针在访问越界时不崩溃,但是释放的时候发生崩溃,底层原因分析

指针使用误区

2025-05-16 17:05:42 414

原创 float数据转为unsigned short示例代码

特别注意:float数据转为unsigned short时,注意小于0和大于65535的值,如果直接赋值都会被转为0值,我们需要判断一下,做个截断;

2025-02-18 16:45:25 420

原创 matlab double和c++ float精度相差正负1个像素

double和float精度相差1个像素

2025-01-24 11:08:51 206

原创 vs2022配置ipp算法库

通过百度网盘分享的文件:w_BaseKit_p_2024.2.1.101_offline.exe。通过百度网盘分享的文件:w_BaseKit_32bit_p_2024.2.1.7_offlin…–来自百度网盘超级会员V6的分享。–来自百度网盘超级会员V6的分享。

2024-10-21 09:21:37 812 1

原创 vs2022配置opencv静态库

本文将在windows10环境下,vs2022+Cmake3.24.4编译opencv静态库,包括win32-release,win32-debug, x64-release, x64-debug四种;文章内容有点长,请耐心看下去。

2024-10-12 14:48:28 2762 2

原创 vs2022安装教程

操作:到类似C:\Program Files (x86)\Intel\oneAPI\ipp\2021.12\env路径下,双击vars.bat脚本文件。双击运行安装ipp,最重要的一步, 安装完需要配置ipp到path环境中。3、授权码:VHF9H-NXBBB-638P6-6JHCY-88JWH。点击download,进入下载页面,选择windows离线版本。在【帮助】菜单,选择输入授权码,即可。下载的很快,下载好是截图中的文件。

2024-10-08 11:34:43 1583

原创 ubuntu16.04升级cmake版本至3.21.0

相对来说。ubuntu16.04是比较稳定一版,但其默认安装的cmake版本是3.5.1,假如我们需要用到更高的cmake版本,则需要手动升级cmake版本号。以cmake3.5.x升级到cmake3.21.x为例,升级步骤如下:先检查ubuntu16.04系统中cmake版本,终端执行命令。

2024-06-17 13:47:44 1712 1

原创 windows客户端通过putty远程linux服务器

putty远程linux服务器

2024-05-07 09:42:52 762 1

原创 # VS2013环境下安装IPP2019失败,解决方案

遇到的问题:运行IPP2019(w_ipp_2019.4.245)安装软件闪退。解决方法:软件右击选择兼容性疑难解答,解决。

2024-04-28 14:42:26 306

原创 matlab2018a 安装指南

matlab2018a 安装说明

2022-09-16 21:37:18 4266

原创 SVN仓库转移流程

SVN仓库转移

2022-08-08 10:33:47 1101

原创 找不到vcomp120.dll,无法继续执行代码

缺少运行库,安装vcredist_x64.exe或者vcredist_x32.exe即可。

2022-07-08 10:57:05 2317

原创 ARM和AMD区别

CPU 与 GPU

2022-06-24 12:30:28 62693 5

原创 Unable to start program bug解决方法

今天调用动态库的时候提示Unable to start program bug,错误提示如下:这个问题主要发生在一个sln, 集成多个工程, 又将dll工程设置为主调用程序了;解决方法很简单,将带main函数的工程,右击属性,选择将Set as StartUp Project ,将本工程设置为主程序,调用其他工程生成的dll。...

2022-05-18 21:27:45 2821

原创 引用和指针的主要区别

引用的特别之处

2022-03-21 15:42:51 359

原创 动态链接库加载失败,可能解决方法。。。。

c++

2022-02-21 15:35:13 2737

原创 C++指针使用误区及应对方法

最近在使用指针的时候发现一个问题,new了一个指针p, delete 的时候报错了,具体代码如下。/* 错误示范 */#ifndef FLOATtypedef float FLOAT;#endifFLOAT * pMeanB2 = NULL;pMeanB2 = new FLOAT [W];/*....*/FLOAT* err = new FLOAT[xx];for (int col = 0 ; col < xx; col++){ err[col] = abs(*pMean

2022-01-06 14:15:44 567

原创 C/C++实现matlab的imfill()函数

matlab移植C/C++代码时,发现不管是opencv还是IPP库都没有填充联通区域函数imfill(),于是只能自己动手了。先展示一下imfill()函数的功能,如下图:上图中,左图是一个二值图像,白色是手臂边缘像素值为1,黑色区域像素值为0,现在想将手臂填充1,用imfill()函数可以实现该功能,但C/C++代码需要自己实现。C/C++代码:bool imFill(Ipp8u *img, int width, int height){ vector<int> q; int

2021-09-25 10:12:17 2796

原创 2021-05-26debug心得

可能是最近太累了,一个简单的bug也卡了半天,检查不出问题就想通过重启电脑这种笨方法碰运气,想到找同事帮忙,但是想到要培养自己独立解决问题的能力也放弃了,结果百度一下2秒钟解决。啰嗦一堆,就是想告诉自己,正视问题才可以解决问题,调整好心态吧...

2021-05-26 15:35:29 165

原创 NVIDIA® GPU的TCC模式与WDDM模式

NVIDIA Tesla/Quadro 系列高端 GPU 在 Windows 环境下可以配置为 Tesla 计算集群(Tesla Compute Cluster,简称 TCC)模式或 Windows 显示驱动模型(Windows Display Driver Model,简称 WDDM)模式。两种模式有不同适用场景。TCC:该模式下,GPU 完全用于计算,不能作为本地显示输出。WDDM:该模式下,GPU 既用于计算又用于本地显示输出。切换至 WDDM 模式命令:nvidia-smi -dm 0切换

2021-05-21 14:19:56 13350

原创 CUDA安装教程及调试:本机win10+vs2013+NVIDIA GeForce GTX 1050Ti

本人的电脑配置:本机win10+vs2013+NVIDIA GeForce GTX 1050Ti1、CUDA加速环境配置,主要包括四项:1)电脑配有GPU图形处理器2)安装NVIDA驱动3)安装VS开发环境(一个C语言编译器)4)CUDA开发包简单的说,想要用CUDA加速电脑需要有支持CUDA加速的图形处理器,这个电脑买了就带了;并且安装NVIDA驱动,版本可能受限于GPU显卡的型号,后面我想CUDA调试的时候发现显卡决定了的cuda调试器版本,也决定了cuda版本,不了解的慢慢看.

2021-05-19 15:40:44 1969 1

原创 关于DLL与lib的区别如下

引言• 什么是库:库是写好的现有的,成熟的,可以复用的代码。• 所谓静态、动态是指链接。将一个程序编译成可执行程序的步骤:静态库在链接阶段,会将汇编生成的目标文件.o与引用到的库一起链接打包到可执行文件中。因此对应的链接方式称为静态链接。...

2021-02-25 14:19:03 249

原创 学习《操作系统》:进程与线程

一、进程:进程是指在系统中正在运行的一个应用程序;线程是系统分配处理器时间资源的基本单元,或者说进程之内独立执行的一个单元。对于操作系统而言,其调度单元是线程。一个进程至少包括一个线程,通常将该线程称为主线程。一个进程从主线程的执行开始进而创建一个或多个附加线程,就是所谓基于多线程的多任务。二、线程:线程(英语:thread)是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。在

2020-10-26 11:02:06 349

原创 面试题 | ISP 图像处理算法工程师

面试主要分两部分一、图像处理算法相关项目经验答:略二、编程能力C++考察1、void指针有什么作用;2、静态数组与动态数组的区别;3、一个结构体,有int,char, float它的对象.size()是多大?4、static加在变量上和加在函数之前有什么作用?...

2020-09-09 13:33:46 3084

原创 标准库map的用法

1、map最基本的构造函数; map<string, int > mapstring; map<int, string > mapint; map<string, char> mapstring; map< char, string> mapchar; map<char, int...

2020-04-26 14:17:52 689 1

原创 学习C++:STL容器

STL中的基本概念:1、容器:可容纳各种数据类型的通用数据结构,是类模板;2、迭代器:可用于依次存取容器中元素,类似于指针3、算法:用来操作容器中的元素的函数模板sort()来对一个vector中的数据进行排序find()来搜索一个list中的对象容器概述:可用于存放各种类型的数据(包括:基本类型的变量,对象等)的数据结构,都是类模板,分为三种:1、顺序容器 vector|de...

2020-04-07 17:07:08 190

原创 学习C++:回调函数

1、什么是回调函数?回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。2、例如:#include <stdio.h>typedef int(*callback)(i...

2020-04-02 10:59:50 172

原创 学习C/C++:函数指针

函数指针:指向函数的指针变量。因此“函数指针”本身首先应是指针变量,只不过该指针变量指向函数。这正如用指针变量可指向整型变量、字符型、数组一样,这里是指向函数。如前所述,C在编译时,每一个函数都有一个入口地址,该入口地址就是函数指针所指向的地址。有了指向函数的指针变量后,可用该指针变量调用函数,就如同用指针变量可引用其他类型变量一样,在这些概念上是大体一致的。函数指针有两个用途:调用函数和做...

2020-04-02 10:39:34 130

原创 学习C++:void指针和内存操作函数

void指针void *p;1)可以用任何类型的指针对void指针进行赋值或者初始化;double d = 1.54 ;void *p = &d ;void *p1 ;p1 = &d ;2)因 sizeof(void) 没有定义,所以对于void *类型的指针p,*p 无定义;++p, --p, p+=n, p+n, p-n, 等等均为定义;内存操作函数memse...

2020-04-01 19:56:28 284

原创 附录C C语言中的关键字

关键字:autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifinlineintlongregisterrestrictreturnshortsignedsizeofstaticstructswitchtypedefunionunsignedv...

2020-04-01 14:55:33 253

原创 学习C++:一些基础概念

左值与右值:左值可以被赋值,右值是常量不可以被赋值;左值一般在等号左边也可以在右边,右值只能在等号右边;实参与形参:&运算符: 取地址运算符*运算符:解引用运算符。解引用一个指针将返回该指针所指的对象,为解引用的结果赋值也就是为指针所指的对象赋值。...

2020-03-30 15:54:01 201

原创 学习C++:全局变量,局部变量,静态变量

1、全局变量: 定义在函数内部的变量叫局部变量(函数的形参也是局部变量;2、局部变量:定义在所有函数的外面的变量叫全局变量;3、静态变量:全局变量都是静态变量,局部变量在定义时加了关键字“static”,则改变量也成为静态变量;全局变量在所有函数中均可以使用,局部变量只能在定义它的函数内部使用;静态变量的存放地址,在整个程序运行期间,都是固定不变的;非静态变量(一定是局部变量)地址每次函数调...

2020-03-30 14:53:52 446

原创 学习C++:字符串

一、字符串有三种形式用双引号括起来的字符串常量, 如"CHINA" , "C++ program "存放于字符数组中,以‘\0’字符(ASCII码为0)结尾string对象。string是C++标准模板库里的一个类,专门用于处理字符串( 略)二、字符串常量字符串常量占据内存的字节数等于字符串中字符数目加1, 多出来的是结尾字符‘\0’;字符串 “C program” 在内存中的布...

2020-03-30 10:08:21 616

原创 单目运算符,双目运算符,三目运算符

一、单目运算符:自加:++自减:–取反:~二、双目运算符按位与:&按位或:|按位异或:^左移:<<右移:>>三、三目运算符三目运算符,又称条件运算符;例如:int a = 2,c = 3;int b = (a > c) ? a : c;cout << “b:” << b << endl;...

2020-03-30 09:40:26 11308 1

原创 面试题:必掌握20题C++

问1:请用简单的语言告诉我C++ 是什么?答:C++是在C语言的基础上开发的一种面向对象编程语言,应用广泛。C++支持多种编程范式 --面向对象编程、泛型编程和过程化编程。 其编程领域众广,常用于系统开发,引擎开发等应用领域,是最受广大程序员受用的最强大编程语言之一,支持类:类、封装、重载等特性!问2:C和C++的区别?答:c++在c的基础上增添类,C是一个结构化语言,它的重点在于算法和数据...

2020-03-30 09:17:30 241

原创 十大经典算法之三:快速排序(Quick-sort)

1. 算法步骤从数列中挑出一个元素,称为 "基准"(pivot);重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆在基准的后面(相同的数可以到任一边)。在这个分区退出之后,该基准就处于数列的中间位置。这个称为分区(partition)操作;递归地(recursive)把小于基准值元素的子数列和大于基准值元素的子数列排序;2.C/C++代码...

2020-03-27 16:44:59 319

原创 十大经典算法之二:冒泡排序(Bubble-Sort)

1. 算法步骤比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。2.C/C++代码/*The Author: SmilePosition: Algorithm Engine...

2020-03-27 16:34:12 358

空空如也

空空如也

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

TA关注的人

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