- 博客(63)
- 资源 (2)
- 收藏
- 关注
原创 记录 keil4 一个BUG,关于回调函数与宏函数
复现代码块:u8 demo(u8 a, u8 b, u8 c){ .... return 0;}u8 callTest(u8 (*func)(u8, u8, u8)){ u8 a = 0, b = 1, c = 2; return func(a, b, c);}#define MyDemo(a, b, c) demo(a, b, c)...
2020-03-26 10:57:42
518
原创 (python实现)把txt文本格式的英文资料中的单词生成可导入有道词典的文件
原理:在【有道翻译】导出单词本(管这个文件叫 a),用脚本处理英文资料(不一定非是txt格式,这里只是提供一种问题解决方案),将英文资料中的单词梳理成 a 的格式,注意文本编码得是 UTF-8 才行。我把代码放百度网盘了,提取码是 aeaw...
2019-07-11 15:28:03
1504
2
原创 python3 一个处理数据的案例
读取文件,将每一行作为列表的一个值,求每个字符串出现的次数,以及有哪些字符串。写入文件,按次数大小排序,次数后面对应着字符串# -*- coding:utf-8 -*-input1 = open('jpc.txt', 'r')output1 = open('out.txt', 'w')list_of_all_the_lines = input1.read()a = list_of_...
2019-07-10 18:52:23
2480
2
原创 VS2010带参宏定义函数返回值的坑(亲测Keil不会复现这种低级问题)
代码就不贴了,因为我写的演示没有复现(说明还是没搞明白问题怎么来的),但遇到下面这种警告,就需要注意宏定义是否足够明确warning C4013: ‘nvm_read_u8’ undefined; assuming extern returning int原宏定义#define NVM_READ_U8_NOCACHE(addr) nvm_read_u8(addr)改正后的宏定义#d...
2019-06-27 10:39:54
903
转载 VC6在64位Windows7下调试的时候,再结束调试,程序无法退出
链接:https://pan.baidu.com/s/1PjSVOPfgMv3hwp83vcgrNw提取码:rjcb
2019-05-16 10:16:07
609
1
转载 WDK 3790.1830 下载地址
https://winworldpc.com/product/windows-sdk-ddk/2003-nt-52
2019-05-16 09:33:15
923
转载 ecplise console 打印16进制数
https://blog.csdn.net/Alibert/article/details/2855096?utm_source=blogxgwz3
2019-05-13 17:18:51
545
原创 3DES - 3KEY - CBC 加密全过程(用数据展示,很直观哦)
关于 3DES算法 以及 CBC模式 的加密过程原理图,可参考书籍:图解密码技术 - 结城浩(她的个人网站)需要注意的是,这里有两个更底层的过程没拿出来讲,那就是 DES 单元运算(加密 和 解密),后面会另发一篇文章专门展示。加密数据 111111111111111122222222222222223333333333333333秘钥 1122334455667...
2019-04-17 10:58:00
1972
原创 C语言实现:凯撒密码算法(加密 、解密 与 破译)
最近在读《图解密码技术(日)结城浩(著).pdf》,想着为后续增加更深刻的印象与密码学算法的理解#include <stdio.h>#include <memory.h>#include <intrin.h>char alphabet[26] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', ...
2019-03-29 13:29:33
11218
原创 算法:分而治之
#include <stdio.h> int Max3 ( int A, int B, int C ) { return (A > B) ? (A > C ? A : C) : (B > C ? B : C); } int DivideAndConquer ( int List[], int left, int right ) { int Ma...
2019-03-10 16:02:56
653
转载 VM ubuntu18.04.01虚拟机没办法联网
打开终端输入sudo service network-manager stopsudo rm /var/lib/NetworkManager/NetworkManager.statesudo service network-manager start即可联网。ps:从网上看了很多办法, 都需要一个ifconfig命令,巧的是,我ubuntu还办法识别这个命令,查找如何解决。“系统提...
2019-03-05 00:15:00
350
转载 简述JavaCard
什么是JavaCard?JavaCard,即Java智能卡,以智能卡硬件系统为基础,通过软件的方式构造一个支持Java程序下载、安装、运行的软/硬件系统。由于引入了虚拟机技术,JavaCard具备硬件无关性,即智能卡应用程序开发与智能卡硬件系统相分离,简化开发过程,提高应用程序的可移植性与可重用性。对比传统的NativeCard和JavaCard:NativeCard:特定开发环境不同...
2019-02-12 10:47:32
452
原创 python 测试类全局变量写法
实践出真知,今日份的疑惑,以下测试结论是:在类成员函数中,通过 self 定义的变量是该类全局可访问的class testVariable(object): def __init__(self): object.__init__(self) self.a = 1 def add_G(self): self.a += 1...
2019-01-30 14:46:38
566
原创 使用 Saleae LLC 监控 7816 协议数据
复位应答正常 APDU 通讯7816速率计算公式:注意规范有规定复位应答期间,Fi 和 Di 必须为默认值(否则双方如何确定要用多少速率通讯)。Fi = 372 | Di = 1 1 etu = ( Fi / Di ) * ( 1 / f ) 速率 = 1 / 1 etu最后推荐另一款逻辑分析仪,它客户端是在 Github 开源的:1、客户端源码传送门2、DreamSou...
2019-01-18 17:57:09
1304
3
转载 python安装第三方库的三种方法
来源:赵小生的技术博客使用pip大多数库都可以通过pip安装,安装方法为,在命令行窗口输入pip install libnamelibname为库名某些库通过pip安装不了,可能是因为没有打包上传到pypi中,可以下载安装包之后离线安装,方法是pip install libpathlibpath为本地安装包地址,这些安装包一般以whl为后缀名。表示python扩展包的window...
2019-01-07 14:04:30
360
原创 QtCreator 启动报错:failed to load core: plugin initialization failed: no themes found in installation
环境IDE:Qt\Qt5.9.1\Tools\QtCreator\bin\QtCreator.exe构造器:Qt\Qt5.9.1\5.9.1\mingw53_32\bin\qmake.exeQt\Qt5.9.1\Tools\QtCreator\bin\mingw32-make编译源码:qt-creator-opensource-src-4.3.1问题描述:编译成功后...
2018-12-18 10:39:26
2747
原创 【二次开发基于 Qt Creator 的 IDE】第一篇:在 Win10 使用 qmake 和 mingw32-make 编译 Qt Creator 4.3.1
不知从哪个版本开始,采用了 QBS 工程管理 和 LLVM 相关的插件,导致编译起来比较麻烦(暂时不需要考虑 这两种插件的实现和功能),我目的只是 编译、运行、熟悉 QtCreator 结构(能拆解与二次开发),最终实现基于 QtCreator 的 IDE (拥有自己的编程语言,我是准备用于 智能卡自动化测试平台,也就是一种上位机)。首先需要去除上面提到的两种插件的编译,如下图进入 ...
2018-12-17 00:03:45
1592
原创 QtCreator 技巧:使用 Cmake 作为编译器时,通过 Jom 工具实现多核编译,提高编译速度
准备材料Cmake官方下载Jom官方下载配置环境将 Cmake.exe 和 jom.exe 添加到 PATH 就可以了添加参数点击编译速度贼快吧…暂时又不用换电脑了
2018-12-06 22:28:19
2051
原创 JavaCard Applet(三)eclipse 常用操作
上一篇我们讲了建立工程、JCOP和实卡运行调试 以及几个需要注意的点,这篇我们将讲下平时使用 eclipse 常用的操作。一、在当前工程中,修改包和应用的 AID展开 工程 和 src鼠标左键点击 包 后,Alt + EnterProperties for wallet/Java Card SettingsPackage AID = 新值Ok修改应用 AID 同理,展开 包 和...
2018-10-25 17:00:24
1001
原创 JavaCard Applet(二)建立工程
上一篇我们已经讲过如何搭建环境,接下来这篇文章则记录 如何建立工程,仿真与实卡两种情况下所需要注意的几个点。一、新建工程File/New/Java Card ProjectProject name = WalletFinishFile/New/Java Card AppletPackage = walletName = WalletNext...
2018-10-25 16:03:16
852
原创 JavaCard Applet(一)搭建环境
安装清单名称用途下载JCOP仿真器 & 调试器微云jdk-6u37-windows-i586Java 环境微云eclipse3.5.2IDE微云一、搭建 Java Environment安装 【 jdk-6u37-windows-i586.exe 】配置环境变量,在:控制面板\所有控制面板项\系统\高级系统设置\环境变量...
2018-10-25 14:48:06
1054
7
原创 (长期更新)经验总结
不论是刚学计算机还是刚学某某某,都很多人(包括自己)会栽在一些莫名其妙的错误上,例如:1、学共享库某程序无法定位于函数某某某 —— 库版本不对会导致某些函数未实现,自己编译或者找适当的版本无法解析某某某至某某某 —— 未导入静态链接库,这个太基础了自己百度吧…莫名其妙的运行错误 —— 如果不是你代码或库本身有问题,那么就是 编译器类型(msvc/mingw/gcc/cmake)、编译器版...
2018-09-30 15:38:49
340
转载 Cmake 编译静库 动态库 指定输出路径
cmake_minimum_required(VERSION 3.11)define_source_files()Project(CmakeTest)aux_source_directory(. src)#add_executable(project1 ${src}) #编译为可执行程序#add_library(project1 ${sr...
2018-09-29 17:00:02
1228
转载 驱动程序测试
此 bolg 来自《竹林蹊径 - 深入浅出 windows 驱动程序开发》一书,用于读书笔记分享驱动程序开发完成后,我们需要进行一些功能性测试,以保证它工作于最佳状态。通常需要进行以下几方面的测试。内存使用测试目的是查看驱动程序有没有发生内存分配失败的情况。我们可以使用操作系统自带的 Verifier 工具进行测试,启动方式是直接在操作系统的命令行状态下运行 Verifier,也可以从...
2018-09-21 14:41:00
4143
转载 error TRK0005: Failed to locate: "CL.exe". The system cannot find the file specified.
vs找不到cl.exe编译器,解决方法:配置属性->VC++目录->可执行文件目录添加“从父级或项目默认设置继承”
2018-09-20 11:47:34
1664
原创 QT发布exe应用程序的心得体会
前言:QT 分为 C++ 和 QML 两个流派,编译用 Release 模式,通过 windeployqt 可以生成依赖库发布应用程序有三种类型: 1、用 WINRAR 自解压成 1个exe文件,大小为 20MB 2、用网上找的安装包制作软件打包成 1个安装程序,大小也跟 方法一 差不了几MB 3、用 压缩软件打包后,发布绿色免安装版(也就是一堆文件加exe)如果知道自己用了哪些 Q...
2018-08-29 17:27:20
247
原创 QT示例之animatedtiles,二维图形框架与动画组
Demo路径:&lt; Qt Install Path &gt;\Examples\Qt-5.8\widgets\animation\animatedtiles演示效果 项目结构 项目资源centered.png ellipse.png figure8.png kinetic.png random.png tile.png Time-...
2018-08-28 14:28:23
1258
原创 类函数指针
类函数指针的类型声明: typedef 函数类型 (类名::*指针类型名)(函数参数, …);用以上类型定义指针变量: 指针类型名 指针名;直接定义类函数指针: 函数类型 (类名::*指针名)([函数参数], …);将类成员函数的地址赋值给指针变量: 指针名 = &类名::函数名;执行指针变量指向的类成员函数: 类名 对象名; 函数类型 ...
2018-08-24 13:38:47
1517
原创 在QT5中使用闭包/内联函数Lambda
步骤一:Qt5支持C++11,但要使用它,还需要先在Pro文件中添加 “CONFIG+=C++11”步骤二: 场景1、在关联函数中嵌入Lambdaconnect(ui->comboBox, &QComboBox::currentTextChanged, [&](){ qDebug()<<"Lambda表达式";}...
2018-08-24 13:37:44
1119
原创 QT使用仿函数的学习记录
最近在设计一个测试平台,为菜单栏创建动作的时候,看到有 func1 slot 这个参数,随着好奇,通过度娘和实践,成功在QT中调用了它(仿函数)打开QMenu的帮助文档,看到有以下十个原型:QAction *QMenu::addAction(const QString &amp;text)QAction *QMenu::addAction(const QIcon &amp;icon,...
2018-08-20 16:22:49
941
转载 如何去解决fatal: refusing to merge unrelated histories
我在Github新建一个仓库,写了License,然后把本地一个写了很久仓库上传。先pull,因为两个仓库不同,发现refusing to merge unrelated histories,无法pull因为他们是两个不同的项目,要把两个不同的项目合并,git需要添加一句代码,在git pull, 这句代码是在git 2.9.2版本发生的,最新的版本需要添加–allow-unrelate...
2018-08-15 16:22:49
305
原创 关于代码托管(使用心得)
这两天体验了下三种方法(GitHubDesktop、Git+QtCreator、TortoiseGit)分别对Gitee和GitHub进行代码托管 从 Gitee 和 GitHub 的实际使用情况来说,选择 Gitee 能明显感觉到优势:访问速度快、可选性(免费私有库 和 免费开源库)而 GitHubDesktop、Git+QtCreator、TortoiseGit 这三种方法(目前...
2018-08-15 14:53:18
1637
原创 内存
在程序没有执行前,以下几个内存分区已经确定,虽然分区确定,但是内存只有在程序运行时才被加载。1、text(代码区):只读,函数2、data:初始化的数据,全局变量,静态变量,文字常量区(只读)3、bss:没有初始化的数据,全局变量,静态变量当运行程序,加载内存,首先加载上面确定的3个内存分区(text,data,bss),然后额外加载2个区:1、stack(栈区):普通局部变量...
2018-07-24 11:26:48
187
原创 变量
普通局部变量1、在花括号内部直接用数据类型定义的变量2、只有执行到定义变量的语句,系统才会给这个变量分配空间3、只有离开花括号的时候,才自动释放4、基于 特性3,释放之后无法继续操作该变量5、只要不是在同一个花括号,就可以出现重名的情况6、初始值是随机数静态局部变量1、在花括号内部用static+数据类型定义的变量2、编译阶段就已经分配空间,定义的语句未执行之前...
2018-07-24 11:25:57
191
原创 指针
1、指针变量也是一个变量,是变量就可以赋值2、指针指向谁,就把谁的地址赋值给指针3、*变量 操作的是指针所指向内存,可以用来 被赋值 与 取值4、不可定义void类型的变量,因为不能确定类型5、可定义void 变量,void 指针也叫万能指针6、void *可以指向任何类型的变量,使用指针所指向的内存时,要先转换为它本身的指针类型7、指针步长是根据指针类型决定的,所以用万能...
2018-07-24 11:25:24
215
原创 深入理解MFC子类化(读后感)
A问:子类化为什么存在,它有什么用? B答:例如,平时我们登录账号或输入一些信息的时候,不小心或故意输入非法字符时,输入框附近就会有红色字体警告并提示我们合法的输入规则是怎样的。 B问:如果让你实现这个特性,你的方案是? A答:我觉得可以利用已有的编辑框控件吧,在它基础上,写个函数来实现。 B问:具体怎么实现呢? A答:我会先创建一个Edit编辑框控件,在类向导绑定它的变量对象,然后定义...
2018-07-11 09:36:10
338
原创 VC6.0 基于MSCOMM编写的串口工具在未装环境的电脑上无法运行(成功解决)
参考教程:链接我的方案是:1、首先在有VC6.0环境的电脑中,找到c:\windows\system32\MSCOMM32.OCX2、编写一个a.Bat文件,内容是 RegSvr32 ./MSCOMM32.OCX3、用压缩工具的自解压打包为exe应用程序,选中 MSCOMM32.OCX 和 a.Bat,以及运行你exe要用到的资源,在自解压选项窗口中,覆盖方式选择覆盖所有文件,设...
2018-07-09 21:00:35
1239
转载 Qt 快速转换数据类型
以下内容截至《Qt Creator快速入门》 上图表左侧一栏提到的所有类型都可以通过赋值给QVariant的对象,然后用 toT() 函数转换为 T 的类型。
2018-07-04 19:38:27
180
解决win7系统无法通过点击任务栏和ALT+TAB切换窗口的问题
2018-10-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人