自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(93)
  • 问答 (3)
  • 收藏
  • 关注

转载 bug系列(二)release版本DLL报错,debug版本正常

一、链接错误编译成release版本时,提示Linking...nafxcw.lib(thrdcore.obj):errorLNK2001:unresolvedexternalsymbol__endthreadexnafxcw.lib(thrdcore.obj):errorLNK2001:unresolvedexternalsymbol__beginthrea...

2019-04-02 08:48:32 1023

转载 LInux进程/线程 各种id

参考:Linux公社 微信公众号文章一、进程与线程的异同1.进程是资源分配的基本单位,线程是系统调度的基本单位2.进程是资源的集合,这些资源包括内存地址空间,文件描述符等,一个进程中的多个线程共享这些资源3.CPU对任务进行调度时,可调度的基本单位是线程。如果一个进程中没有其他线程,可以理解为这个进程中只有一个主线程,该主线程独享进程的所有资源。4.进程的个体间是完全独...

2019-04-01 09:15:40 417

原创 C陷阱与缺陷

1.词法分析中的贪心法编译器读取多字符符号(如==,/*等符号)的原则是:每一个富豪应该包含尽可能多的字符——贪心法符号的中间不能嵌有空白(空格,制表符,换行符) ==单个符号,= =是两个符号 a---b(a--,a-b)与a-- -b含义相同,与a- --b(--b,a-b)含义不同 /*是一段注释的开始, y=x/ *p是x/指针p指向的变量值,等同于y =...

2019-03-26 17:06:22 3713

原创 查看本机的MTU

1.MTU指网络上传送的最大数据包长度,单位是字节,超过MTU长度的数据包要被分割成多个包。不同的接入方式,MTU值是不一样的,如果值太大就会产生很多数据包碎片,增加丢包率,降低网络速度。平常使用的宽带PPPoE连接方式,其MTU值最大为1492,解决的办法就是在注册表中对MaxMTU值逐步调低,直到网络最正常为止。2.查看本机MTU的命令win+R --->cmd 输入:nets...

2019-03-25 14:42:15 4679

原创 UML基础:用例图/类图/对象图/时序图/活动图/状态图

UML(统一建模语言)-用例图(Use case Diagram,也称用户模型图),是从客户的角度来描述系统功能。包含3基本组件:-参与者Actor:使用该系统的人或事物,人形图表示 -用例Use case:系统的某项完整的功能,椭圆表示 -关系 :用力之间的关系——>泛化关系,扩展关系,包含关系泛化关系:同一业务目的(...

2019-03-21 22:32:10 3263 1

原创 编程问题记录

网络字节序和主机字节序不同,导致数据位置出错,Short 2字节以上用htons() 字节序对齐 #pragmapack(1)3.计时#include <time.h>clock_t startTime =clock();{待测程序}clock_t endTime=clock();cout<<"Time cost:"<<double(end...

2019-03-20 16:35:09 516

转载 VS2017使用

VS2017程序调试1、启动调试。可以通过VS的调试(Debug)菜单启动调试。点击调试菜单下的“启动调试”或者按F5键启动。如果你已经在代码中加入了断点,那么执行会自动开始。注:退出调试快捷键shift+F5。2、断点(Breakpoints)。断点用于通知调试器何时何处暂停程序的执行。通过点击左边栏或者按F9键在当前行添加断点。在加断点之前,你需要知道你的代码将会出现...

2019-03-20 16:30:35 1117

原创 new/delete与malloc

new/delete(堆内存) new和delete是c++的运算符,不是函数,因此执行效率高new/delete会分配内存且调用构造析构函数,说明new会初始化对象 指针变量=new 类型(常量);//从堆分配一块“类型大小的存储空间返回首地址” delete 指针变量; 指针变量=new 类型[常量]; delete[] 指针变量; 虽然为了与C语言兼...

2019-03-20 16:25:09 172

原创 c++类的小知识点static关键字/友元/运算符重载

1.类定义在类内部的函数是隐式的内联函数引入const成员函数,这里const的作用是修改隐式this指针的类型,默认情况下this的类型是指向类类型非常量版本的常量指针。C++类对象中的成员变量和成员函数是分开存储的(内存四区:堆区、栈区、全局区、代码区模型仍然有效)成员变量:普通成员变量:存储于对象中,与struct变量有相同的内存布局和字节对齐方式静态成员变量:存储于全局数据区中...

2019-03-20 16:22:25 180

原创 C++STL容器(下)set/multiset/map/multimap

1.priority_queuepriority_queue<int> p1; //默认是 最大值优先级队列//priority_queue<int, vector<int>, less<int> > p1; //相当于这样写,less是提前定义好的预定义函数,谓词。priority_queue<int, vector<int&gt...

2019-03-18 16:37:16 221

原创 C++STL容器(上)string/vector/deque/stack/queue/list

数据结构:研究节点和节点之间的关系STL(算法、容器、迭代器)实现了数据结构和算法的有效分离,用来管理元素。算法和迭代器可以进行无缝连接count(v.begin(),v.end(),3)//统计元素3的个数容器除了可以放基础数据类型,也可以放元素(类类型对象),也可以放指针类型,也可以放指针类类型对象【涉及深拷贝和浅拷贝】。容器push_back()是将元素拷贝到容器中,所以要确保元素...

2019-03-18 09:42:02 264

原创 localhost、127.0.0.1 和 本机IP之间的区别

测试SNMP软件发现和127.0.0.1以及本机ip都可以ping通,但是和其他ip不可以.参考:https://zhidao.baidu.com/question/1176120779058268299.html1、localhost等于127.0.0.1,不过localhost是域名,127.0.0.1是IP地址。2、localhost和127.0.0.1不需要联网,都是本机访问。...

2019-03-14 15:17:55 1716

原创 centos下配置vim格式及对指定用户生效

一、配置root用户的vim可以自己在root权限下更改.vimrc文件vim /etc/vimrc //在该文件插入许多set配置比如:set nu // 设置显示行号set showmode // 设置在命令行界面最下面显示当前模式等set ruler // 在右下角显示光标所在的行数等信息set a...

2019-03-11 09:38:03 1194

原创 关于32位编译器和64位编译器下结构体和共用体字节对齐的问题

系统 win10 64位 编译器:VS2017测试32位和64位字节长度,先测试如下代码(struct中有1个8字节长度的double成员)// 测试字节长度.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//#include "pch.h"#include &lt;iostream&gt;using namespace std;typedef ...

2019-03-08 08:58:36 1331 5

转载 const关键字与指针/引用

0.const的4个作用修饰变量,说明该变量不可以被改变; 修饰指针,分为指向常量的指针【const在*左边】和指针常量【const在*右边】; 常量引用,经常用于形参类型,即避免了拷贝,又避免了函数对值的修改; 修饰成员函数,说明该成员函数内不能修改成员变量。1.const和指针int main(){const int a;//意味着azhi'duint ...

2019-03-06 15:55:16 315

原创 由一个错误案例理解为什么要有成员函数

#include&lt;iostream&gt;using namespace std;//c++的命名空间class circle{public: double r; double pi = 3.1415926; double area = pi*r*r; };int main(){ circle pi; cout &lt;&lt; "请输入area" &lt;...

2019-03-06 15:31:21 130

原创 vxBus驱动架构

1.vxworks-6.8中三个设备驱动文件相对路径:installDir/vxworks-6.8/target/3rdparty中存放的是第三方提供的基于VxBus架构的设备驱动程序;installDir/vxworks-6.8/target/src/hwif中存放的是风河官方提供的基于VxBus架构的设备驱动程序。installDir/vxworks-6.8/target/drv中存放的...

2019-03-06 14:44:51 1099

原创 最大公约数算法——欧式算法

输入:正整数x,y输出:最大公约数步骤1:x整除以y,记余数为r步骤2:若r==0则最大公约数为y,算法结束步骤3:否则将y作为新x,将r作为新y,重复上述步骤unsigned int gcd(unsigned int x,unsigned y){ unsigned int r; while(true) { r=x%y; if(r==0) return ...

2019-03-05 22:04:35 873

原创 C++Primer读书笔记(三)

1.迭代器所有标准库容器都可以使用迭代器,但只有少数容器可以使用下标。auto b=v.begin(),c=v.endl();//如果容器空,则be都指向尾后迭代器迭代器支持的运算符,*iter iter->成员,++,--,==,!=//大多数不支持<vector<int>::iterator iter;string::iterator it2;//iter可读...

2019-03-05 16:07:01 158

原创 .bat文件和脚本文件

1..bat文件是一种批处理文件,里面存储着命令,一般可以在windows下直接执行。批处理文件是扩展名为·bat 或·cmd的文本文件,包含一条或多条命令,由DOS或Windows系统内嵌的命令解释器来解释运行。使用方便、灵活,功能强大,自动化程度高。2.脚本文件类似于DOS操作系统中的批处理文件,它可以将不同的命令组合起来,并按确定的顺序自动连续地执行。脚本文件是文本文件,用户可...

2019-03-05 09:52:05 5072

原创 muduo木铎学习(一)

作者原文:https://blog.csdn.net/Solstice/article/details/5848547#_Toc17667相关的名词解释:1.一个基于 Reactor 模式的 C++ 网络库Reactor 模式:反应器设计模式,处理并发服务请求,并将请求提交到一个或者多个服务处理程序的事件设计模式。当客户端请求抵达后,服务处理程序使用多路分配策略,由一个非阻塞的线程来...

2019-03-04 22:20:24 1020

转载 COM组件和一般DLL 的区别

1,lib和dll的区别lib静态链接库,作为库代码的一部分,在编译时被链接dll动态链接库有两种加载方式,一种是静态加载,即在应用程序启动时被夹在; 一种是动态加载,在该动态链接库被使用时才被应用程序加载2.DLL和COM组件的区别动态链接库的表现形式只能是.dll...

2019-03-01 09:46:55 5144

原创 移位运算——获取unsigned short的高八位和低八位数值

#include "pch.h"#include &lt;iostream&gt;#include &lt;string&gt;typedef unsigned char BYTE;typedef unsigned short WORD;typedef unsigned int UINT32;using namespace std;int main(){ stri...

2019-02-28 10:36:21 10403 3

原创 .msi文件和.exe文件的区别

二者都可以用来安装应用程序,区别如下: MSI就是microsoft installer的简写,msi文件就是window installer的数据包,把所有和安装文件相关(即下文说的windows installer的功能)的内容封装在一个包里。Windows Installer的用途包括:管理软件的安装、管理软件组件的添加和删除、监视文件的复原以及使用回滚技术维护基本的灾难恢复。...

2019-02-27 15:41:02 64148 3

原创 生成SNMP的DLL(动态链接库)

由于C#/WPF不可以直接调用lib,只能调用dll;所以将之前的SNMP lib要改成 SNMP DLL1.下载SNMP库下载地址:http://www.agentpp.com/LIBDES-l-4.01a 解压后为libdes文件夹SNMP++v3.2.25 解压后为snmp++文件夹2.新建DLL工程将上述两个文件夹复制到工程目录下,将两个文件夹中有的.c、.cpp文...

2019-02-27 09:09:04 822

转载 计算机冷启动和热启动的区别

参考:https://zhidao.baidu.com/question/1160878.html 冷启动要重新上电,检测硬件,电流对硬件有冲击,并有损害。热启动不重新上电,不检测硬件,直接加载数据。开机是冷启动。重启是热启动。 热启动 1)热启动是指在计算机已经开启的状态下,通过键盘重新引导操作系统。 一般在死机时才使用。   2)热启动不进行硬件自检。 复...

2019-02-27 08:52:33 11193

原创 学习git哟

****使用准备***1.下载gitbash 安装可以一路默认2.添加PATH环境变量的路径 2.1 git目录下bin路径 2.2 git-core的路径3.打开git-bash.exe4.绑定用户 git config --global user.name "github用户名" git config --global user.email "github邮箱...

2018-12-03 14:33:42 169

原创 bug系列:free(): invalid next size (fast): 0x00000000027d5dd0 ***/leetcode 389找不同

题目:错误提示详情:思路 :建立一个频率数组存放t中每个字母出现的频率,然后减去s中该字母出现的频率 最后剩余频率不为0的字母就是添加的那个字母。错误代码:class Solution {public: char findTheDifference(string s, string t) { vector<int> freq={0};...

2018-10-17 20:06:45 432

转载 常用UDP端口号

UDP 1=Sockets des Troie  UDP 9=Chargen  UDP 19=Chargen  UDP 69=Pasana  UDP 80=Penrox  UDP 371=ClearCase版本管理软件  UDP 445=公共Internet文件系统(CIFS)  UDP 500=Internet密钥交换  UDP 1025=Maverick‘s M...

2018-10-08 08:21:55 32315

原创 leetcode 237删除链表中的节点(只给定要求被删除的节点)

难点在于只给定了一个参数,而不是链表+要删除的节点 2个参数思路:将该节点的下一个节点的值替换当前值,然后删除后面一个节点          注意这里的前提条件是链表至少包含两个元素/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next...

2018-09-28 11:23:17 379

原创 一道智力题——瞎子翻牌

给一个瞎子52张扑克牌,并告诉他里面恰好有10张牌是正面朝上的。要求这个瞎子把牌分成两堆,使得每堆牌里正面朝上的牌的张数一样多。瞎子应该怎么做?  答案:把扑克牌分成两堆,一堆10张,一堆42张。然后,把小的那一堆里的所有牌全部翻过来。解析:设42张中有x张正面朝上,则10张里面有10-x张正面朝上,这时将10张全部翻过来,两堆牌里都有x张正面朝上...

2018-07-07 12:29:20 3490

原创 tcpip基础之传输层协议

1.ip首部中用一个字段来标识上层即传输层采用哪种协议(tcp/udp)传输层使用端口号识别在应用层中所要进行处理的具体程序端口号(程序地址)与路由器交换机等设备网卡上的端口号有所不同tcp/ip或udp/ip中通常采用5个信息来识别一个通信:源ip地址、目标ip地址、协议号、源端口号、目标端口号只要其中某一项不同,就被认为是其他通信确定端口号的两种方法:   1.标准既定的端口号(静态):HTT...

2018-07-05 11:39:33 2145

原创 排序算法——选择排序(C++实现)

选择排序中心思想:在arr[0]-arr[N-1]中找出最小的数,与a[0]对换在arr[1]-arr[N-1]中找出最小的数,与a[1]对换在arr[2]-arr[N-1]中找出最小的数,与a[2]对换#include &lt;iostream&gt;#define N 10using namespace std;int main(){ int arr[N]={20,5,56,...

2018-07-04 15:16:17 2925

原创 tcpip基础之ip协议相关技术

  在访问web和发送电子邮件时输入web网址或电子邮件地址等应用层地址而不会直接输入IP地址,所以需要实现——应用层地址与ip地址之间的映射。  在数据链路层也不使用IP地址,所以还需ip地址与MAC地址的映射。1.DNS(Domain Name System)ipv4、ipv6均试用tcpip中要求每一个互联的计算机都具有唯一的IP地址,并基于此通信,但直接使用IP地址不方便。主机识别码:为每...

2018-07-04 13:07:09 217

原创 排序算法——冒泡排序(C++实现)

冒泡排序的中心思想:将数组中的相邻元素进行两两比较,若逆序则交换。#include &lt;iostream&gt;#define N 10using namespace std;int main(){ int arr[N]={2,5,1,3,4,10,9,8,7,6}; int i,j,k; int temp; cout&lt;&lt;"排序前:"&lt...

2018-07-03 14:45:49 674

原创 tcpip基础之ip协议

1.网络层的主要作用是实现终端节点之间的通信,即“点对点通信” 数据链路层是在互联网一种数据链路的节点之间进行包传递,一旦跨越多种数据链路就需要网络层2.定义主机:配置有ip地址,但不进行路由控制的设备路由器:既配有ip地址又具有路由控制功能的设备节点:两者的统称3.ip主要分为三大作用模块:ip寻址、路由(最终结点为止的转发)、ip分包与组包ip地址: 不论一台主机与哪种数据链路连接,其ip地址...

2018-07-03 10:26:19 321

原创 tcpip数据链路层相关技术基础

1.部分名词解释PPP(Point to Point Protocol)点对点协议VLAN(Virtual Local Area Neteork)虚拟局域网FDDI(Fiber Distributed Data Interface)光纤分布式数据接口ATM(Asynchronous Transfer Mode)异步传输方式OUI(Organizationally Unique Idefier)厂商...

2018-07-02 10:24:13 475

原创 tcpip通信流程

1.数据包首部数据包= 以太网包首部+ip包首部+tcp包首部+数据其中:               ip包首部+tcp包首部+数据的组合是以太网数据                              tcp包首部+数据的组合是ip中的数据                                        数据是tcp中的数据2. 包、帧、数据报、段、消息 术语区分 包是全能...

2018-07-01 17:16:31 3690

原创 tcp/ip协议基础

1.分层:应用层    对应计算机中的应用程序传输层   互联网层   传输层和互联网层对应计算机操作系统数据链路层 对应设备驱动程序与网络接口2.应用层常用协议DNS(Domain Name System,域名系统)用于域名与IP地址的映射URI(Uniform Resource Identifier,统一资源标识符)用于定位Web上可用的每种资源 -HTML文档、图像、视频片段、程序等 HTM...

2018-07-01 12:22:21 335

原创 C++入门编程实战(二)商品销售系统

开发语言:C++开发环境:VS2017程序说明:商品销售系统程主要分为三部分:   commodity类的声明与实现(commodity.h、commodity.cpp)、   trade类的声明与实现(trade.h、trade.cpp)、   主函数及各功能模块设计(main.cpp)及相关的预编译头文件(stdafx.h、stdafx.cpp、tarverget.h)程序的主界面及可实现的功...

2018-06-14 20:12:20 11992 10

空空如也

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

TA关注的人

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