自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 内存泄漏检测

Vld内存泄漏检测

2022-08-21 13:51:59 295 1

原创 crc计算

crc8,crc16,crc24计算

2022-08-01 15:18:12 461

原创 简单点_c_lesson11(数组)

c_lesson111.数组定义1.1 遍历数组1.2 char[]:被当做普通的char数组,就跟int[]数组类似,需要遍历数组,下标访问的方式才能获取每一个元素。1.3 char[]:被整体当做字符串使用1.4 char[]:输入的区别2.一维数组2.1 初始化一维数组,计算一维数组的元素个数,遍历输入和打印一维数组。2.2 数组下表元素对应的空间、内容的理解--数组任意一个元素满足左值和右值问题2.3 一维数组在内存中的存储3.二维数组3.1 二维数组的创建、初始化3.2 遍历二维数组:二维数组在内

2022-05-22 17:12:10 374

原创 简单点_c_lesson10(递归)

c_lesson101.递归1.接收一个整型值(无符号),按照顺序打印它的每一位。 例如: 输入:1234,输出 1 2 3 4.1.2 编写函数不允许创建临时变量,求字符串的长度。1.3 求n的阶乘。(不考虑溢出)1.4 求第n个斐波那契数。(不考虑溢出)2.练习递归2.1 递归实现n的k次方2.2 计算一个数的每位之和。DigitSum(n),输入一个非负整数,返回组成他的数字之和。2.3 逆序打印字符串。2.4 字符串逆序。3.C程序地址空间1.递归1.什么是递归?程序调用自身的编程技巧称为递归

2022-05-21 22:09:18 264

原创 简单点_c_lesson9(函数实现相关练习,链式访问、函数调用、多文件)

c_lesson91.练习1.1 写一个函数可以判断一个数是不是素数。1.2 写一个函数判断一年是不是闰年1.3 写一个函数,实现一个整形有序数组的二分查找。1.4 写一个函数,每调用一次这个函数,就会将num的值增加1。2.链式访问和函数调用2.1 函数调用2.2 链式访问:由内而外进行计算3.函数的声明和定义4.遗留的练习4.1 分数求和4.2 乘法口诀表4.3 break、continue的例子1.练习写一个函数可以判断一个数是不是素数。写一个函数判断一年是不是闰年。写一个函数,实现一个整

2022-05-21 15:56:21 167

原创 简单点_c_lesson8(库函数、自定义函数、函数调用)

c_lsson81.函数1.1 库函数1.2 自定义函数--》求两个数的最大数。1.3 函数调用--》交换两个数2.练习2.1 1-100有多少个9.2.2 求数组当中的最大数1.函数1.函数是什么? 函数就是子程序,由代码块构成。具有独立性 一般有输入参数和返回值,提供对过程的封装和细节的隐藏。这些代码通常被集成为软件库或者函数库2.函数分类:库函数、自定义函数 (1)库函数:C标准库函数,支持可移植性和提高程序的效率。 strcpy:char * strcpy ( char * des

2022-05-21 14:34:18 181

原创 简单点_c_lesson7(3的倍数、三个数排序、闰年、素数、最大公约数)

c_lesson71.Lesson 6遗留问题1.1 赋值所造成的的陷阱1.2 输出1-100之间3的倍数1.3 三个数排序2.Lesson7遗留问题2.1 打印1000-2000之间的闰年2.2 打印100-200之间的素数2.3 求两个数的最大公约数1.Lesson 6遗留问题1.赋值所造成的的陷阱2.输出1-100之间3的倍数3.三个数排序1.1 赋值所造成的的陷阱思路:由于i=5是赋值语句,所以造成了死循环;想修改要改成i==5#if 1#include <stdio.

2022-05-21 13:52:23 181

原创 简单点-c-lesson6(while、for、do()while、goto循环)

C_lesson61.循环 while1.1 while循环1.2 break:结束循环1.3 continue:这里一直6进行死循环,因为continue退出了本次循环,进入下一次循环。没有条件更新。1.4 解决continue因为无条件更新造成了死循环。因为continue结束了5的循环,所以运行结果是0,1,2,3,4,6,7,8,91.5 break例子:从控制台死循环获取字符,如何退出死循环。1.6 continue实例:从输入的一堆字符中,获取0-9数2.for循环2.1 break:1,2,3

2022-05-21 13:28:39 257

原创 简单点-c-Lesson5(结构体,分支语句(if,switch),p和*p的区别)

c_lesson51.结构体2.分支语句 if语句2.1 单选12.2 二选12.3 多选12.4 并列if2.5 悬空else,就近匹配if,解决方案就是把{}写上。2.6 判断一个数是否为奇数2.7 输出1-100之间的奇数3.分支语句 switch...case:break; default:break3.1 单分支3.2 多分支3.3 例子看break的重要4.其他小知识点5.p和*p的区别,具体是什么含义要看是左值还是右值。1.结构体(1)结构体定义,即描述不同数据类型或者相同数据类型的集

2022-05-16 22:20:20 248

原创 二维数组应用(扫雷)

1.多文件创建1.main.c:函数的调用2.mine.c:扫雷函数的实现3.mine.h:头文件,函数的声明,宏定义,头文件包含。2.扫雷思路1.创建多文件夹。(main.c、mine.c、mine.h)。2.Menu()函数:提示玩家是玩游戏还是退出游戏。3.main()函数,主函数,程序的入口。调用相关函数。4.Game()玩游戏函数。5.定义两个(N+2)(N+2)的二维数组。6.初始化面板为7.初始化雷盘为08.设置雷(系统随机设置)9.排雷10.判断结果3.

2022-05-16 21:45:58 230

原创 二维数组的应用(三子棋)

1.创建多文件夹创建一个chess.cpp、chess.h、main.cpp.chess.cpp:函数的实现;chess.h:头文件的引用,宏定义,全局变量的声明,函数的声明;main.cpp:函数的调用2.分析三子棋

2022-05-15 23:32:29 500 2

原创 ISE安装,配置环境变量,驱动下载和更新。

ISE安装,配置环境变量,驱动下载和更新。1.安装ise。2.配置环境变量。3.更新驱动1.安装ise。1.解压安装包(注意解压的路径不要有中文,安装路径也不要有中文)。以管理员身份运行安装程序。2.点击next。3.勾选I agree,点击next。4.勾选“I accept”,点击“Next”。5.点击next。6.点击next。7.选择安装路径,建议只改前面的盘符为D:,路径不能有中文路径。点击next。8.点击install。9.安装中,稍等一会。10.安装途

2022-05-15 23:03:28 10640 8

原创 C语言实例(九)数组

C语言实例(62~76)62.使用for循环输出数组(1)代码(2)运行结果63.使用 for 循环逆向输出数组(1)代码(2)运行结果64.计算数组元素之和:使用 for 循环迭代出输出数组元素,并将各个元素相加。(1)代码(2)运行结果65.给定数组,计算数组元素平均值:使用 for 循环迭代出输出元素,并将各个元素相加算出总和,再除于元素个数.(1)代码(2)运行结果66.用户自定义输入数组,计算数组元素的平均值(1)代码(2)运行结果67.数组拷贝:将一个数组复制给另外一个数组:(1)代码(2)运行

2022-05-05 00:11:55 2370

原创 C语言_框架

lesson41、static修饰局部变量,全局变量,函数a(局部变量):static修饰局部变量改变了变量的生命周期,让静态局部变量出了作用域依然存在,直到程序结束,生命周期才结束 。注:作用域没变,只生命周期改变,局部变量类似转变为全局变量b(全局变量):(1)全部变量支持跨文件访问:extern int g_value;(2)static修饰全部变量,代表该全部变量,只在本源文件中有效,只能在本源件中访问,不能在其他源文件中进行访问(3)在本文件中加不加static均可以访问。c(函

2022-05-03 16:12:10 270

原创 C语言实例(八)翻转字符串_删除特殊字符串_最大值_最小值_循环交换三个数

C语言实例(57~61)57.使用递归来翻转字符串(1)代码(2)运行结果58.使用引用循环替换数值(1)代码(2)运行结果59.删除字符串中的除字母外的特殊字符。(1)代码(2)运行结果60.通过用户输入指定的数值,来判断最大值。(1)代码(2)运行结果61.通过用户输入指定的数值,来判断最小值。(1)代码(2)运行结果二级标题(1)代码(2)运行结果二级标题(1)代码(2)运行结果57.使用递归来翻转字符串(1)代码#if 1#include <stdio.h> #include

2022-04-29 20:55:39 1050

原创 C语言实例(七)回文数_素数_阿姆斯壮数_因数

C语言实例(50~5750.判断一个数是否为回文数。(1)代码(2)运行结果51.求一个整数的所有因数(1)代码(2)运行结果52.判断Armstrong数(阿姆斯壮数)(1)代码(2)运行结果53.两数之间的 Armstrong 数(1)代码(2)运行结果54.使用函数判断Armstrong 数(1)代码(2)运行结果55.判断素数(1)代码(2)运行结果56.判断两个数之间的素数(1)代码(2)运行结果57.使用函数判断两数间的素数(1)代码(2)运行结果50.判断一个数是否为回文数。设n是一任意

2022-04-29 19:56:25 1091

原创 C语言实例(六)创建各类三角形

C语言实例(40~)40.使用*号创建直角三角形图案(1)代码(2)运行结果41.使用不同数字创建直角三角形图案(1)代码(2)运行结果42.每行使用相同的字母,不同行使用不同字母,来创建直角三角形图案(1)代码(2)运行结果43.用*号创建倒直角三角形(1)代码(2)运行结果44.用不同数字创建倒直角三角形(1)代码(2)运行结果45.*号创建金字塔(由空格数和*组成)(1)代码(2)运行结果46.不同数字创建金字塔(1)代码(2)运行结果47.*号实现倒金字塔(1)代码(2)运行结果48.杨辉三角(1)

2022-04-29 19:43:57 9228 1

原创 C语言实例(五)素数_数据按不同格式输出_计算器

C语言实例(36~40)36.计算一个数是否可为两个素数之和(1)代码(2)运行结果37.实现简单的计算器(1)代码(2)运行结果38.将 1~100 的数据以 10x10 矩阵格式输出(表格形式输出数据)(1)代码(2)运行结果39.等差数列输出 10x10 矩阵格式(1)代码(2)运行结果40.乘法运算格式输出数据(1)代码(2)运行结果36.计算一个数是否可为两个素数之和(1)代码#if 0#include <stdio.h>#include <windows.h>

2022-04-29 19:31:41 550

原创 IAR安装

1.管理员身份运行。2.点击“install IAR Embedded workbench for ARM”3.点击Next。4.点击I accept,next。5.选择安装路径。一般只改盘符,不要有中文路径。6.点击next。7.点击next。8.点击install9.安装中,稍等一会。10.点击finish。11.点击finish后,会出现一系列驱动的安装,对每一个都进行安装,一路进行到底就ok。 激活:1.出现如下界面,点击取消,点击确定。2.点击he

2022-04-29 18:03:21 15806 5

原创 C#上位机(绘制波形)

1.绘制图形相关参数设置//绘图相关定义private const int Unit_length = 32;//单位格大小private int DrawStep = 8; //默认绘制单位private const int Y_Max = 512; //Y轴最大数值private const int MaxStep = 33; //绘制单位最大值private const int MinStep = 1; //绘制单位最小值private const

2022-04-24 12:06:00 3179 10

原创 C语言实例100(四)进制之间的转换

C语言实例(33-35)33.八进制与二进制相互转换33.1 二进制转换为八进制(1)代码(2)运行结果33.2 八进制转换为二进制(1)代码(2)运行结果34.八进制与十进制相互转换34.1 十进制转换为八进制(1)代码(2)运行结果34.2 二进制转换为八进制(1)代码(2)运行结果35.二进制与十进制相互转换35.1 二进制转换为十进制(1)代码(2)运行结果35.2 十进制转换为二进制(1)代码(2)运行结果33.八进制与二进制相互转换33.1 二进制转换为八进制(1)二进制转换为八进制的核

2022-04-21 15:12:14 449

原创 matlab的解决反复激活问题的license.lic文件

%%%%%%%%%%%%%%%%%%%%%%%%%%%%INCREMENT Aerospace_Blockset MLM 99 permanent uncounted \ A05070F00D1EB1F92326 VENDOR_STRING=QQ=47399897 HOSTID=ANY \ ck=216 SN=888888 TS_OKINCREMENT Aerospace_Toolbox MLM 99 permanent uncounted \ 6090F

2022-04-21 11:38:14 2729 2

原创 matlab2009安装教程

1.管理员身份运行setup。2.选择如下图后,点击next。3.选择YES,点击next。4.输入序列号:11111-11111-02011-44270,点击next。5.选择typical,点击next。6.选择路径,点击next。7.点击yes。8.选择install。9.安装中,稍等一会。10.点击yes。11.点击next。12.激活matlab,点击next。13.选择“activate manually without the internet”

2022-04-20 12:21:54 3078 4

原创 【示波器、频谱仪、信号源的使用】

1.示波器(1)edge: 设置探头,及触发方式(上升沿、下降沿、交变沿、任一沿)(2)cursors: 调整波形之间的距离,时间基准线副线,左右调节,配合时间基准线,计算时间和频率。(3)Mode compling: 设置触发模式(标准、自动)、耦合(直流DC、交流AC、低频抑制)(4)Quick meas: 显示一些数值。(5)Menu room: 显示幅度和频率。(6)Pluse width: 脉冲宽度触发菜单(7)single: 信号触发控制,主要提前设置触发信号,为自动。

2022-04-17 13:32:48 4407

原创 CPU底层那些事(数组越界也不一定就会出现堆栈溢出)

数组作为一种数据类型。数组越界会咋样?会导致堆栈溢出吗?其实数组越界分两种,一种是数组向高端地址越界、一种是数组向地段地址越界。1.数组向低端地址越界。(1)定义一个数组,并依次给数组赋值。代码:#include <stdio.h>#include <windows.h>void fun1(){ long a[2]; a[0] = 1; a[1] = 2; a[-1] = 3; a[-2] = 4;}int main().

2022-04-14 16:00:05 1097 3

原创 CPU底层那些事(指针你知道多少?)

C和C++的精髓是指针,指针的本质是内存地址。普通变量或者类的成员变量都有内存地址,普通变量或者类的成员变量能像指针变量一样使用指针操作。(指针的*操作和->操作)。1.定义一个普通的变量a,fun1()函数:借用指针变量p,通过*操作,给变量a给赋值。代码:int a = 0;void fun1(){ int* p = &a; *p = 1;}底层汇编:a: .zero 4fun1(): push rbp .

2022-04-13 11:31:02 1123 4

原创 【GPS周-周内秒、BDS周-周内秒转换与逆转换】

(1)北斗卫星导航系统的时间基准为北斗时(BDT),BDT采用国际单位制(SI)秒为基本单位连续累计,不闰秒,起始历元为2006年1月1日协调世界时(UTC)00时00分00秒。(2)GPST属原子时系统,其秒长为国际制秒(SI),与原子时相同,但其起点与国际原子时(IAT)不同。GPST与UTC规定于1980年1月1日0时相一致。( 3)BDT溯源到中国科学院国家授时中心(NTSC)保持的UTC时间,简称UTC(NTSC),与UTC之间的闰秒信息在导航电文中播报。BDT与UTC的偏差保持在100纳秒.

2022-04-08 14:56:13 8122 2

原创 【GPS周-周内秒、日历时、UTC转换和逆转换】

GPS1. GPS周-周内秒与日历时的转换与逆转换1.1 GPS周-周内秒到年月日系统的转换1.2 GPS日历时与周-周内秒的转换1.3 主函数调用1.4 运行结果2. GPS周-周内秒与UTC时间系统的转换与逆转换2.1 GPS周-周内秒到UTC时间系统的转换2.2 GPS UTC时间系统到周-周内秒的转换2.3 主函数调用2.4 运行结果(1)为了保证导航和定位精度,全球定位系统GPS建立了专门的时间系统———GPS系统时,简称GPST。(2)GPST属原子时系统,其秒长为国际制秒(SI),与原子

2022-04-08 14:39:10 15744 1

原创 【BDS周-周内秒、日历时、UTC时转换和逆转换】

BDS1.BDS周-周内秒与日历时的转换与逆转换1.1 BDS周-周内秒到年月日时间系统的转换1.2 年月日时间系统到BDS周-周内秒的转换1.3 主函数调用1.4 运行结果2.BDS周-周内秒与UTC时间系统的转换与逆转换2.1 BDS周-周内秒到UTC时间系统的转换2.2 UTC时间系统到BDS周-周内秒的转换2.3 主函数调用2.4 运行结果(1)北斗系统的时间基准为北斗时(BDT)。(2)BDT采用国际单位制(SI)秒为基本单位连续累计,不闰秒,起始历元为2006年1月1日协调世界时(UTC)

2022-04-08 10:37:14 7225 4

原创 cadence16.6安装教程

cadence16.6安装教程1.安装license manage2.安装production installation3.配置环境1.安装license manage(1)管理员身份运行。(2)选择license manage。(3)点击next。(4)点击I accept ,点击next。(5)点击change,选择License Manager的安装目录(注意不要有中文),然后点击NEXT。(6)点击NEXT。(7)点击Install。(8)安装中,稍等一会。(9)

2022-04-04 09:46:38 34141 22

原创 【C语言实例100(三)】

C语言实例(28-32)28.阶乘28.1 循环实现(1)代码(2)运行结果28.2 递归实现(1)代码(2)运行结果29.循环输出26个字母(大写字母)(1)代码(2)运行结果30.输出大写或小写字母(1)代码(2)运行结果31.判断数字为几位数(1)代码(2)运行结果32.计算一个数的 n 次方,例如: 23,其中 2为基数,3为指数。32.1 while循环实现(1)代码(2)运行结果32.2 利用POW()库函数实现(1)代码(2)运行结果32.3 递归实现(1)代码(2)运行结果28.阶乘一

2022-04-01 21:46:57 960 2

原创 【C语言实例100(二)】

C语言实例26-26.求两数的最大公约数26.1 for循环实现26.1.1 代码26.1.2 运行结果26.2 while循环实现26.2.1 代码26.2.2 运行结果26.3 适用正数和负数26.3.1 代码26.3.2 运行结果26.4 使用递归实现26.4.1 代码26.4.2 运行结果27.求两数最小公倍数27.1 while循环实现27.1.1 代码27.1.2 运行结果27.2 通过计算最大公约数27.2.1 代码27.2.2 运行结果26.求两数的最大公约数26.1 for循环实现2

2022-04-01 21:27:14 723

原创 【C/C++常见的编译,链接错误】

1.fatal error C1003: error Count exceeds number; stopping compilation中文对照:(编译错误)错误太多,停止编译分析:修改之前的错误,再次编译2.Fatal error C1004: unexpected end of file found中文对照:(编译错误)文件未结束分析:一个函数或者一个结构定义缺少“}”、或者在一个函数调用或表达式中括号没有配对出现、或者注释符“/…/”不完整等3.fatal error C1083: Ca

2022-04-01 21:05:56 5590 1

原创 【C语言实例100(一)】

C语言实例(1-25)1.输出hello world(1)代码(2)运行结果2.输出一个整数(1)代码(2)运行结果3.输出单个字符(1)代码(2)运行结果4.输出浮点数(1)代码(2)运行结果5.输出双精度数(1)代码(2)运行结果6.两个整数相加(1)代码(2)运行结果7.两个浮点数相乘(1)代码(2)运行结果8.字符转ASCII码(1)代码(2)运行结果9.两数相除(1)代码(2)运行结果10.两个数进行比较(1)代码(2)运行结果11.三个数进行比较(1)代码(2)运行结果12.计算类型的大小12.

2022-03-28 17:41:05 1037

原创 keil安装教程

1.安装MDK1.管理员身份运行MDK533.EXE。2.点击next。3.勾选I agree,点击Next。4.选择路径,尽量默认路径,点击Next。5.填写用户信息,随机填写。点击Next。6.进行keil5安装。7.点击安装。8.安装完成,点击finish。9.关闭弹出的窗口。2.激活MDK1.管理员身份运行keil5(一定管理员身份)2.点击file,选择licence management,复制ID号。3.在安装文件中管理员身份运行keygen.ex

2022-03-28 16:02:54 17707 5

原创 C#上位机(软件串口设置的保存方法--在ADC数据接收的上位机上进行修改)

由于每次重新打开串口,比较麻烦,我们给串口赋予记忆功能。1.

2022-03-25 22:44:07 2085

原创 【C#上位机(弹出窗体的设计)】

1.控制台添加弹出窗体1.1 右键项目名称–》添加–》windows窗体1.2 添加1.3 Program.cs程序设计using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace 弹出窗体设计{ class Program { static void Main(strin

2022-03-25 16:26:02 4942 5

原创 C#(类和对象、自定义类)

1.类和对象常见的类:object类;TextBo文本控制类;Button按钮类;Form窗体类;label标签控件类;GroupBox分组类;ProgressBar进度条类,SerialPort串口类;Times定时器类;MessageBox窗口提示类;String字符串类;Convert类型转换类;Console输入输出流类;Exception系统异常类;Image图像类;SystemSounds系统提示音类;Bitmap位图类;Process进程类;Thread进程类。using Syste

2022-03-25 15:02:27 948

原创 C#上位机(ADC数据显示/波形显示)

1.简单版(ADC数据显示在进度条上)硬件链接热敏电阻、电容等。低电平为0x00,高电平为0xFF。1.1 窗体设计上述窗体设计也没什么特殊的,都是平时应用的。1.2 获取硬件的ADC值,传入上位机,并进行十六进制显示1.2.1 窗体事件public Form1(){ InitializeComponent(); //添加串口数据接收事件--可以直接生成,也可以手动输入。 //this.serialPort1.DataReceived += new System.I

2022-03-23 22:42:52 3427 5

原创 CPU底层那些事(goto的优势)

底层看goto和for循环goto真的消失了吗?其实并没有,他只是以另一种形式在存在而已。从上述图片中,我们可以看到,for循环和goto的底层汇编指令完全相同。总结1.jmp这个指令,用来改变cpu执行指令的位置。2.通常情况下,CPU都是顺序执行,一条指令执行完,在执行下一条指令。遇到jmp指令后,cpu就会跳转至被指定的位置,继续执行。3.这种改变程序执行顺序的情况有很多,比如:for,while,foreach,if(){}else{},switch。你完全可以用goto实现该

2022-03-22 18:11:32 840 5

空空如也

空空如也

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

TA关注的人

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