- 博客(27)
- 收藏
- 关注
原创 在mac上使用ffmpeg
对于一个有字幕的mkv视频文件,可以使用ffmpeg -i <inputFileName>.mkv -vcodec copy -acodec copy -sn <outFileName>.mkv来进行剔除字幕的要求来源于https://stackoverflow.com/questions/12131789/how-to-disable-subtitles-decoding-in-ffmpeg...
2022-03-09 00:27:32
4477
原创 使用牛顿迭代法求平方根(scheme实现)
先说方法对于x,需求求出他的平方根前提条件:猜测一个数guess1迭代步骤:1.猜测guess12.求商x/guess13.再求guess1和商的平均值guess24.根据guess1和guess2比较,用来决定结束迭代还是进入下一次迭代。也可以用于计算精度的调整举例:对于4来说,猜测它的平方根为1·猜测为1,商4/1=4,平均值为(1+4)/2=2.5·猜测为2.5,商4/2.5=1.6,平均值为(2.5+1.6)/2=2.05·猜测为2.05,以此类推…结果会无限逼近2对于2
2022-03-01 15:44:11
473
原创 OpenXLSX的安装与使用(macOS-c++)
首先是OpenXLSX的主页https://github.com/troldal/OpenXLSXgit colne下来然后#在目录OpenXLSX下,pwd出来是../OpenXLSX/mkdir buildcd buildcmake ..#......cmake --build . --target OpenXLSX --config Release#......#然后使用install安装make install#......#接下来可以去/usr/local/目录下查看i
2022-01-14 16:55:36
4290
原创 FLTK下的按钮动作
base.hpp#ifndef _BASE_HPP_#define _BASE_HPP_#include <FL/Fl.H>#include <FL/Fl_Window.H>#include <FL/Fl_Box.H>#include <FL/Fl_Button.H>#endif//!_BASE_HPP_demo.cpp#include "base.hpp"using namespace std;Fl_Widget* other=
2021-12-28 11:44:33
811
原创 fltk和glog在mac下的安装与编译
glog根据官方文档安装即可https://github.com/google/glog% git clone https://github.com/google/glog.git% cd glog% cmake -S . -B build -G "Unix Makefiles" //这句含义未知% cmake --build build安装完后可以去/usr/local目录下查看是否有对应的头文件和lib文件若没有可以尝试make install命令% make install源文
2021-12-15 18:25:46
1943
原创 浮点数存储
浮点数存储以及精度问题一.将十进制数转换成二进制小数转化:举例(1)0.6转换成二进制在小数点前的转换(取余数,然后舍去余数)第一步:0 / 2 = 0,取0【除数为0,结束】在小数点后的转换(取小数点前的数,然后舍去)第一步:0.6 x 2 = 1.2,取1,第二步:0.2 x 2 = 0.4,取0第三步:0.4 x 2 = 0.8,取0第四步:0.8 x 2 = 1.6,取1第五步:0.6 x 2 = 1.2,取1,回到第一步…【循环,没有结束】故0.6的二进制为0.1001
2021-09-07 16:44:06
577
原创 一句话谈设计模式
1.解释器模式解释器(Interpreter)模式的定义:给分析对象定义一个语言,并定义该语言的文法表示,再设计一个解析器来解释语言中的句子。也就是说,用编译语言的方式来分析应用中的实例。这种模式实现了文法表达式处理的接口,该接口解释一个特定的上下文。解释器模式是一种类行为型模式。其主要优点如下:1.扩展性好。由于在解释器模式中使用类来表示语言的文法规则,因此可以通过继承等机制来改变或扩展文法。2.容易实现。在语法树中的每个表达式节点类都是相似的,所以实现其文法较为容易。其主要缺点如下:1.执
2020-09-07 16:04:43
179
原创 时间戳相关
通常我们说的时间戳,就是指格林威治时间(GMT)1970年01月01日00时00分00秒起至现在的总秒数。标准的时间戳的起始时间是(基于格林威治标准时间的,即GMT时间)1970-01-01 00:00:00但是世界上各个地区有自己的时区,都需要基于GMT时间进行调整。因为中国处于东八区,所以时间会比标准时间早8小时, 所以出现这种起始时间戳:1970-01-01 08:00:00 明显是受到了时区的影响。...
2020-09-02 17:01:28
2466
原创 Linux下串口通讯
通过安装socat来创建虚拟串口apt install socat输入socat -d -d PTY PTY回复的...N PTY is /dev/pts/4...N PTY is /dev/pts/5...中,"/dev/pts/4"和"/dev/pts/5"是串口名称通过minicom设置串口(没有就安装)然后通过minicom -s进入设置界面选择"Serial port setup"设置串口信息,包括名字,波特率等等。设置完通过"Save setup as dfl"
2020-07-27 23:54:03
182
原创 记录一些linux的系统函数
1.获取进程ID每个进程都有一个唯一的正数(非零)进程ID(PID)。getpid函数返回调用进程的PID。getppid函数返回它的父进程的PID(创建调用进程的进程)。#include <sys/types.h>#include <unistd.h>/*返回:调用者或其父进程的PID*/pid_t getpid(void);pid_t getppid(void);getpid和getppid函数返回一个类型为pid_t的整数值,在Linux系统中pid_t在typ
2020-07-24 18:15:46
267
原创 条件数据传送和条件控制转移事例
基于条件控制转移的标准方法 if (!test-expr) goto false; v = then-expr; goto done;false: v = else-expr;done:基于条件传送的代码v = then-expr;ve = else-expr;t = test-expr;if (!t) v = ve;虽然基于条件数据传送的代码会比基于条件控制转移的代码性能要好,但不是所有的条件表达式都可以用条件传送来编译。...
2020-07-24 15:18:41
358
原创 位向量的简单举例
我们可以用位向量[a(w-1),…,a(1),a(0)]编码任何子集A属于{0,1,…,w-1},其中a(i)=1当且仅当i属于A。(记住,我们总是把a(w-1)写在左边,a(0)写在右边)例如:位向量a=[01101001]表示集合A={0,3,5,6}位向量b=[01010101]表示集合B={0,2.4.6}位向量c=[00111011]表示集合C={0,1,3,4,5} 7=6=5=4=3=2=1=0a 0=1=1=0=1=0=0=1 在0,3,5,6位上为1b 0=1=0=1
2020-07-21 17:21:51
1182
原创 大端法和小端法的简单举例
0x1234567(example)0x00 0x01 0x10 0x11 ......(memory address) 01 23 45 67 ......(big endian) 67 45 23 01 ......(little endian)
2020-07-20 12:50:25
375
原创 windows10下git的第一次提交
第一步:下载安装git;第二部:创建本地仓库文件夹;第三部:在本地仓库文件夹下使用git指令本地初始化(.git隐藏文件的创建) git init将文件添加到暂存区 git add [文件名]提交者信息 git config --global user.email "[提交者邮箱]" git config --global user.name "[提交者姓名]"提交到...
2020-03-26 00:37:15
325
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人