自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 QT中返回和前进的快捷键是什么?VS中ctrl 和 -

Alt + Left 返回,光标上一次到的那个位置,如从一个文本到了另一个中。Alt + Right前进

2021-12-02 10:30:47 4106

原创 Qt与IPE机械臂通讯串口

找到全部可用的串口,从中选择用户使用的那个。 QList<QSerialPortInfo> infos = QSerialPortInfo::availablePorts(); QSerialPortInfo info; int count=infos.count(); for(int i=0;i!=count;++i) { info=infos.at(i); ui->comboBox_COM->addIt

2021-11-19 21:38:19 359

原创 2021-10-19

Move 和forward在C++中?std::move的作用是将一个左值引用转为右值引用,以便调用移动语义的函数。std::move和std::forward实际上是对static_cast的封装,由编译器在编译阶段完成对应的行为,不会增加运行时的负载。明std::move和std::forward本质就是一个转换函数,std::move执行到右值的无条件转换,std::forward执行到右值的有条件转换2. 模板中class和template的区别?3. 多线程的线程安全问题。

2021-10-19 15:53:05 99

原创 美的笔试9-24

std::function函数的作用?std::function是一个可调用对象包装器,是一个类模板,可以容纳所有可调用对象,它可以用统一的方式处理函数、函数对象、函数指针,并允许保存和延迟它们的执行。调用对象的类型不同,但共享了一众调用形式!因此可以包装。C++11 中的std::function和std::bind - 简书绑定一个普通函数,成员函数。C++11中提供了std::function和std::bind统一了可调用对象的各种操作。3. sizeof不可以被重载,但

2021-09-24 12:48:48 357

原创 2021-09-18C++面试

votatile的作用:多线程编程中,这个变量是会经常被改变的。寄存器,从内存中去读取。寄存器与内存:大钱世界呀,只有谁比谁更水。数组名并不是真正意义上的指针。野指针:初始化指向NULL,指针大小是固定的吗?内存地址的长度是固定的。同时我们不难看出,一个指针的值就是一个32位的二进制数,32位对应4字节(Byte)。 所以,指针的大小实际上是由CPU的寻址位数决定。指针类型的大小是固定的(无论该指针指向哪种数据类型),在32位系统中为4字节;在64位系统中为8字节。什么时候必须重写拷贝构造函

2021-09-19 11:39:44 62

原创 粘包9-10

粘包这个问题的根因是由于开发人员没有正确理解 TCP 面向字节流的数据传输方式,本身并不是 TCP 的问题,是开发者的问题。TCP 不管发送端要发什么,都基于字节流把数据发到接收端。这个字节流里可能包含上一次想要发的数据的部分信息。接收端根据需要在消息里加上识别消息边界的信息。不加就可能出现粘包问题。TCP 粘包跟Nagle算法有关系,但关闭 Nagle 算法并不解决粘包问题。UDP 是基于数据报的传输协议,不会有粘包问题。IP 层也切片,但是因为不关心消息里有啥,因此有不会有粘包问题。TCP 发

2021-09-10 19:47:38 70

原创 2021-09-08声网面试三叉树是否对称

struct Node{ int val; Node* left; Node* right; Node* mid;}bool isSymmetric(Node* tree){ if(tree == NULL) return true; return isSame(tree->left, tree->right) && isSymmetric(tree->mid);}bool isSame(No...

2021-09-08 16:11:30 193

原创 2021-08-25C++面试题和vim

:8, 9ddelete表示删除第八到第九行。/向后查找/sip 会查找到对应的行:wq记住必须在英文模式下点:才会有反应,才能退出!!:q!不保存就退出,没必要保存复制:命令行时输入V进去,hijk选择要复制的行,按y复制!粘贴:(命令行模式下按p才行)光标移到指定位置,p进行粘贴。显示数字序号,可以删去set nu:/^ # $/d可以删掉所有#的注释。进入行尾?...

2021-08-25 15:28:33 82

原创 C++学习文

static和const的初始化?static关键字只能用于类定义体内部的声明中,定义时不能标示为static在C++中,const成员变量也不能在类定义处初始化,只能通过构造函数初始化列表进行,并且必须有构造函数。...

2021-08-12 19:56:56 75

原创 2021-06-11 Leetcode491、60

如何解决string 去除一个字符问题!?https://www.bilibili.com/video/BV1AJ411a7fB?from=search&seid=16572044708874072107还是用一个vector来mark效果最好!!class Solution {public:vector<string> vt; string getPermutation(int n, int k) { set<int> ...

2021-06-11 21:50:23 135 2

原创 2021-06-10Leetcode216、377

依然是要抓住24个字母char,这里用map, 注意map.second这个可以是0,但为0不可以,要判断!!class Solution {public:int ans; int numTilePossibilities(string tiles) { map<char, int> dict; for(auto a: tiles){ dict[a]++; } backtracking(d.

2021-06-10 21:57:55 71

原创 2021-06-08二叉树路径问题

https://leetcode-cn.com/problems/longest-univalue-path/solution/yi-pian-wen-zhang-jie-jue-suo-you-er-cha-94j7/Leetcode114解题的关键是:左子树的最下最右的节点,是右子树的父节点.为什么一个先序遍历,我用后序?回溯算法!! 从右到左的进行排序! last真的只记录这个顺序的上一个 因为left==nullptr,必定会有丢失! TreeNode* l...

2021-06-08 22:22:06 92

原创 2021-05-30

10class Solution {public: bool isMatch(string s, string p) { int i=0, j=0; while(i < s.size() && j< p.size()){ if(s[i]==p[j] || p[j]=='.'){ i++; }else if(p[j]=='*'){

2021-05-31 23:27:03 51

原创 2021-05-24还是正则?

//line = line.simplified(); //据说空格都去掉 QString rule = "([ATC]{1,})(\\d+)(?:\\s*)(\\d+)(?:\\s*)(\\d+)"; QRegExp rxlen(rule);memset是一用就报错??LineCode addressLineCode(QString& line){ //目标Lock T2; Grasp T2 LineCode li...

2021-05-24 23:30:52 68

原创 将VS Qt文件转变为Qt文件2019

https://doc.qt.io/qtvstools/qtvstools-getting-started.html

2021-05-24 09:27:10 163

原创 2021-05-19Snap7通讯软件开发

什么叫TOD读取和写入??#include “snap7.h”; byte MyDB32[256]; // byte is a portable type of snap7.h TS7Client *Client; void SymplyGet() { MyClient = new TS7Client(); MyClient->ConnectTo(“192.168.10.100”,0,2); MyClient->DBRead(32, 0, 16...

2021-05-20 19:15:21 238

原创 2021-05-19Leetcode30/76

正确的一定是m*n长度的,外层循环,满足这个再内圈循环, 有一个mark不需要变? 就是dict,但建立一个temp,每次的循环检查都可以出来一个temp 题目字典序中每个都是等长度的。class Solution {public: vector<int> findSubstring(string s, vector<string>& words) { vector<int> ans; int n = w...

2021-05-19 23:07:45 78

原创 2021-05-18Leetcode205/299/385/136

为什么只有再i+1时才能实现呢? i+3都行??class Solution {public: bool isIsomorphic(string s, string t) { int ss[126] = {0}; int tt[126] = {0}; if(s.size() != t.size()) return false; for(int i=0; i<s.size(); i++){ ss...

2021-05-18 23:43:29 121

原创 2021-05-17Leetcode187/290

187.class Solution {public: vector<string> findRepeatedDnaSequences(string s) { vector<string> ans; unordered_set<string> dict; if(s.size()< 10) return ans; int l =0, r = 9; while(r&lt.

2021-05-18 09:48:52 70

原创 2021-05-17Snap7与西门子PLC读取

snap7中i区和Q区调用什么函数?IPI stands for Inputs Process Image and IPU forOutputs Process Image. They are two memory areas in which (or from which) the physical I/O are copied automatically by the Bus Processor.Snap7 / Discussion / General Discussion: IPU a..

2021-05-17 22:19:39 1036

原创 QT中添加动态链接库.dll,如snap7.dll和lib

在pro文件中添加这样一句!!或者在pri(这个文件夹指示链接关系或者路径的)LIBS += -L$$PWD/lib/ -lsnap7INCLUDEPATH += $$PWD/.DEPENDPATH += $$PWD/.在Qtsnap7的开源包中,它新建了一个pri去存路径与VS-Qt的区别?vs中只要把这些放入源文件夹下,列表中添加一下,设置都不需要,编译就可以了!...

2021-05-17 18:29:57 662

原创 2021-05-16哈希表

49.没有顺序的要分类,一定要排序下!!、 排序之后就可以找到唯一的keyclass Solution {public: vector<vector<string>> groupAnagrams(vector<string>& strs) { vector<vector<string>> ans; unordered_map<string, vector<string&..

2021-05-17 18:05:28 96

原创 2021-05-13Libnodave测试

只需要几个代码块,注意32或者64位的qmaker会有区别只需要几个代码块,注意32或者64位的qmaker会有区别选择构建又会重新生成那个文档buildCOM程序是window上进运行?Yesqmaker是什么?根据之前项目指南创建的项目文件.pro,并且运行qmake生成debug或release目录,里面含有qmake后生成的Makefile,但此时还未生成.exe;qmake 是为 Qt 量身打造的,使用起来非常方便 cmake 使用上不如qmake简单直接,但复杂换来的

2021-05-15 22:54:41 781

原创 2021-05-15使用snap7

.dll的导入办法?胡乱导入就行,和cpp放一个目录下,路径就可以找到。不仅要.cpp和.h, 这两个还依赖了.dll和.lib.四个全要导入进去!!可以在其中建文件夹??include, source,这些都次要,检索路径到它上一条,可以添加就行VS-Qt, Qt中部件名不在VS中显示???QT_BEGIN_NAMESPACE在ui文件中保存一下 在VS中ui文件编译一下,解决方案再生成一下 这个声明也必须加上!!QT_BEGIN_NAMESPACE 于是就可以...

2021-05-15 22:47:47 316

原创 2021-05-13字符串太难了!

38.第二种反而效率更高一些!class Solution {public: string countAndSay(int n) { return helper("1", n, 1); } string helper(string s, int n, int index){ if(index == n){ return s; } int nums =1; s..

2021-05-14 11:09:20 91

原创 2021-05-12Libnodave10年开始总共8篇

open Socket(By Val port As Long, ByVal peer As String)函数中,由于西门子以太网中的ISO on TCP协议所使用的数据传输端口为102[51],所以port被设置为102,而peer则为PLC的以太网地址。How to use libnodave?libnodave可以直接通过网口访问西门子PLC200,300及以上型号,无需安装西门子prodave驱动libnodave-0.8.5: 网上开源的西门子PLC读写库;...

2021-05-13 09:55:27 2991

原创 2021-05-11Leetcode树

700.反了个方向,注意!!!//这个就是对的class Solution {public:TreeNode* searchBST(TreeNode* root, int val) { if(root == nullptr || root->val == val) return root; if(root->val > val) return searchBST(root->left, val); if(root-&g.

2021-05-12 09:53:30 54

原创 2021-05-11PLC通信Libnodave-明天继续

Q1.1, 1.2单数和复数,只要是单数就是松开,复数是闭合。控制键都是双开或者双闭合I也是如果一对的,如气爪。PLC控制快换的连接和断开时一个固定的,变的只是在不同位置P点。换夹具。每个托盘上有五处位置,P20-24 非胶圈零件位置P25-P29 胶圈零件位置。可以一次性对盘中所有的点进行定义,机械臂走的不过就是这些点。 P0存在吗 考虑到夹紧位置,或者装配位置精度要求很高,不然装不上去,此处只设置一个点。P30是输入,P39是输出。中间的,如果之后换五种...

2021-05-11 23:04:39 2423

原创 2021-05-10Leetcode树938/894/783

938.class Solution {public: int ans; int rangeSumBST(TreeNode* root, int low, int high) { dfs(root, low, high); return ans; } void dfs(TreeNode* root, int low, int high){ if(root==nullptr) return; dfs(

2021-05-10 23:32:57 47

原创 2021-05-08北岛李工阅读笔记+廖常初

I/O符号表、中间变量m0.0符号表、S区顺序继电器表,定时器及压力值符号表T。 ?先做好符号表的定义??YES,在写程序时,已定义的符号,地址,注释会自动列表。 主程序中main调用几处S,Step中以SCR开头和SCRE结尾。伺服电机?x8 50针的直接于485口相连。 电机的24V由驱动器来UVW? miniUSB插口线要另买,SD卡有必要。 PWM控制直流电机转速、比例阀开度。Q0.1,只有晶体管型CPU才支持。脉冲宽度可调。PTO占空比50%的脉冲信号控制伺服。...

2021-05-09 23:56:49 723

原创 2021-05-09树563/814/589/429/590/

563.class Solution {public:int ans =0; int findTilt(TreeNode* root) { dfs(root); return ans; } int dfs(TreeNode* root){ if(root==nullptr) return 0; int l, r; if(root->left) { l = .

2021-05-09 19:11:13 52

原创 2021-05-08Leetcode树1367/1171/114/100/222/230/671/508/572

1367哪个地方是起点?请递归? 哪条路径是对的,请递归一个个找class Solution {public: bool isSubPath(ListNode* head, TreeNode* root) { if(root== nullptr) return false; return isSub(head, root) || isSubPath(head, root->left) || isSubPath(head, root->ri.

2021-05-08 23:09:17 89

原创 2021-05-07链表206/92/160/203/237/1721/1019/1669

206class Solution {public: ListNode* reverseList(ListNode* head) { ListNode* dummyHead = new ListNode; dummyHead->next = nullptr; ListNode* cur = head; ListNode* next; while(cur){ next = cu..

2021-05-07 22:50:53 113

原创 2021-05-07PLC的伺服电机与控制器

http://www.ad.siemens.com.cn/service/search/Default.aspx?kw=v90%u9A71%u52A8%u5668&searchType=8&filter=0&ov=#anchorUSS是英文“Universal Serial Interface”的缩写,中文翻译为“通用串行接口”。西门子专属串口??变频器? 控制器(PLC/PG/PC)与驱动装置之间数据交换的通信协议。早期的USS协议主要用于驱动装置的参数设置,后因其协议内

2021-05-07 20:16:32 2622

原创 2021-05-06PLC选型和串口通信

西门子PLC的伺服模块怎么买???S7200smart(国内)和S7 1200(国外),两者定位都是小型的PLC,大型为1500 Smart 是为了一些简单的很小的设备,为了降低成本准备。200是日本的硬件,1200是它自己主打。 两者IO端口号也就 S7200smart是一个专门的S7编程软件,其他的博图集成Basic S7软件 s7-1200网口支持标准的TCP/IP协议,SMART除了网络扩展和便宜之外,其他指标譬如高速脉冲,模拟量输入差太多,位置距离运动控制完全不能相比的2..

2021-05-06 23:17:12 485

原创 2021-05-06链表

25.public ListNode reverseKGroup(ListNode head, int k) { ListNode dummy = new ListNode(0); dummy.next = head; ListNode pre = dummy; ListNode end = dummy; while (end.next != null) { for (int i = 0; i < k && end

2021-05-06 21:19:00 40

原创 2021-05-04Leetcode36-37回溯问题

36.需要再做下标才是真正判断依据。 分配或者藏在了下标矩阵里。 初始状态一定要,下标有9这个数字,[9][10] i, j确实是列,[num]这里表示第几个??0-9一共十种情况?class Solution {public: bool isValidSudoku(vector<vector<char>>& board) { int row[9][10] = {0}; int col[9][10] = {0};..

2021-05-04 23:10:17 151

原创 Leetcode241.96.95回溯和动态规划和递归分治-非人题

95.必须重做左边有多种情况,是一种vector的情况,右边呢,也是vector, 现场取i作为根节点。 什么时候退出呢??选择参数也只有start和end 竟然是vector<>直接输出?,这样左边可获得这么一个阵列。class Solution {public:vector<TreeNode*> ans; vector<TreeNode*> generateTrees(int n) { if(n == 0) return

2021-04-25 13:51:35 71

原创 2021-04-23Qt换台电脑上运行

解析包括去除指令行中的注释文字, //okay 去除指令代码前后多余的空格,// 将指令代码小写字母全部变成大写字母,// 检查必须存在的断号是否存在, 检查程序段字符长度是否超过最大限制, 检查输入参数格式是否合法等。 typedef struct block_struct { unsigned char sequence_number; // 段号 unsigned char line_number; // 自然行号 unsigned char.

2021-04-24 11:07:27 324

原创 Leetcode344,345,541

344.class Solution {public: void reverseString(vector<char>& s) { int l =0; int r = s.size()-1; while(l<r){//l==r只有一个不进行变化了 char tmp = s[l]; s[l]= s[r]; s[r] = tmp;

2021-04-23 00:19:47 43

空空如也

空空如也

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

TA关注的人

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