- 博客(102)
- 资源 (1)
- 收藏
- 关注
转载 2020-11-25
本篇文章主要介绍了VMware安装Centos7超详细过程(图文),具有一定的参考价值,感兴趣的小伙伴们可以参考一下1.软硬件准备软件:推荐使用VMwear,我用的是VMwear 14镜像:CentOS7 ,下载地址 :http://isoredirect.centos.org/centos/7/isos/x86_64硬件:因为是在宿主机上运行虚拟化软件安装centos,所以对宿主机的配置有一定的要求。最起码I5CPU双核、硬盘500G、内存4G以上2.虚拟机准备1.打.
2020-11-25 10:11:47 181
转载 linux下gdb的安装及查看方法
linux下gdb的安装方法gdb是Linux环境下的代码调试工具,其安装步骤如下:安装step1:首先检查系统中有没有安装过,有的话用一下命令卸载gdb旧版本step2:在网址:http://ftp.gnu.org/gnu/gdb下载gdb源码包(这里楼主选的是8.0.1版本);或者直接在linux系统中用wget命令下载:wgethttp://ftp.gnu.org/gnu/gdb/gdb-8.0.1.tar.gz会下载到当前目录下。将源码包放在home...
2020-11-25 09:55:25 2094
原创 virtual虚继承,虚基类指针,虚基类表
1,虚继承的目的:解决环形多继承命名冲突导致的访问变量二义性问题,同时节省了内存2,上述代码,B——》A, C——>A, D——》A,BD中会存在两份A的拷贝,访问A中变量时就不知道是从B继承来的,还是从C继承来的,所以B,C需要声明成虚继承3,A为虚基类,B虚继承A时,A会产生一份虚基类表,表中记录了变量a与类B开始位置的偏移量, C虚继承A时,...
2020-10-19 14:47:04 358
原创 switch语句中case条件后必须要加break吗
不一定我添加了break条件,说明我只想执行这一个匹配的case条件如果我忽略了case条件,我有可能是想将一部分逻辑放到case 2, case 3中去实现。switch语句中的条件,可以是 int long,char,unsigned int类型,但不能是float类型...
2020-09-14 15:26:44 6398
原创 printf出入栈
1,printf压顺序栈都是从右往左,计算顺序也是从右往左。#include <stdio.h>#include <stdlib.h>#include <string.h>int main(int argc, char* argv[]){ long long number1 = 0x0000004200000041; long long number2 = 0x0000004400000043; printf("%c %c %c
2020-09-14 14:47:33 213
原创 linux下结束后台进程的命令
1,ctrl + z:将一个正在前台运行的进程切换到后台并且暂停ctrl + c:将一个正在前台运行的进程杀掉jobs:可以查看当前有多少进程在后台运行jobs -l:可以查看所有在后台进程的PIDfg:可以将在后台的进程调到前台并继续执行fg %jobnumber:该number指的是编号而不是进程号,可以指定后台的任务切换到前台bg:将后台的进程继续在后台执行2,结束后台进程的两种方法2.1 jobs kill -9 任务编号2.2 jobs -l ...
2020-09-04 10:41:18 14564
转载 C语言、内存管理、堆、栈、动态分配
https://blog.csdn.net/weixin_39371711/article/details/81783780
2020-09-03 19:43:30 100
转载 内存管理——栈
1,栈是什么栈是用来管理内存的,其特点是 先进后出,只有一个口,入口即出口2,栈应用举例c中局部变量是通过栈来实现的。eg int b 编译器会自动在栈中开辟一块4字节内存给b,此时对应的操作是入栈,栈顶指针向上移动。将这4字节的地址同局部变量名b关联起来。栈中空间是反复使用的,上次使用完之后只是地址和变量名解除了关联,但是对应的地址存储的内容并没有被清空。所以局部变量没有显示声明的话,值就是脏的。转载https://www.cnblogs.com/sanshijvshi/p..
2020-09-03 19:25:14 173
原创 不同类型数值与零值的比较
要求与零值比较,而不是与0进行比较。C++中零值的范围比较大,可以是0,0.0,FALSE,NULL等int型:int a;if(a == 0)if(a != 0)BOOL flag;if(flag)if(!flag)float b; //不管是float,还是double,都是一个精度的问题,所以不可 以直
2020-09-03 13:22:11 197
原创 计算字符串中匹配项的字符串,并将匹配的字符串存储在c[]中
int main(int argc, char *argv[]){ char *str = "abcdefg"; char *ptr = "a*f"; char c[10]; int i = 0; int j = 0; for(j = 0 ; j < strlen(str); j++) { printf("j = %d\n", j); if(str[j] == ptr[i]) { c[j] = str[j]; i++; conti...
2020-09-02 14:20:06 107
转载 指针和数组的区别
1,概念上:数组:是多个相同类型数据的集合指针:相当于是一个变量,和一般的变量不太一样,存放的是内存地址2,赋值上:同类型的指针可以相互赋值,但数组不可以,赋值也只能一个个的赋值3,存储上:数组是连续存放的,只能通过下标去访问,不是存放在静态区就是在栈上指针本身是一个变量,他自身而言只可能在栈上或者静态存储区,但是他说指向的内存在栈上还是堆上或其他地方都是不确定的int test = 0; //全局静态存储区int *ptrTest = &test; //指针本身
2020-08-31 16:20:07 181
原创 如何实现大小端的转换
分析:所谓大小端转换 也就是实现 高低字节的转换#include <stdio.h>int main(){ int a = 1, result; result = ((a & 0x000000ff) << 24) | ((a & 0x0000ff00) << 8)| ...
2020-08-31 15:47:53 2898
原创 指针自加与printf输出
int main(){ int arr[] = {6, 7, 8, 9, 10}; int *ptr = arr; *(++ptr)= 10; printf("%d\n", *ptr); //10 printf("%d\n", *(++ptr)); //8 printf("a[0] = %d\n", arr[0]); //6 while(1); return 0;} *(ptr++)= 10; printf("%d\n", *ptr); //7 printf("%d.
2020-08-31 13:41:45 211 1
原创 指针在任何情况下均可以进行>,<,>=,<=,==运算
是的,指针是一个特殊的变量,存储的是内存地址。地址是一个4字节的int型变量,其实就是int型变量的比较如果指向的是同一块数组,那么可能比较的是数组元素大小如果指向的是不同地址,比较的则是内存地址大小,一般没啥意义...
2020-08-31 12:00:47 519
转载 TCP协议
转载;https://blog.csdn.net/sinat_36629696/article/details/80740678TCP协议TCP协议全称: 传输控制协议, 顾名思义, 就是要对数据的传输进行一定的控制.先来看看它的报头我们来分析分析每部分的含义和作用源端口号/目的端口号: 表示数据从哪个进程来, 到哪个进程去.32位序号:4位首部长度: 表示该tcp报头有多少个4字节(32个bit)6位保留: 顾名思义, 先保留着, 以防万一6位标志位URG: 标识紧急指针是否
2020-06-29 10:34:51 283
原创 宝利通别名显示乱码
问题描述:平台和宝利通互通,宝利通显示别名乱码分析:先看抓包,setup中别名可以看出采用的是标准BMPString标准,占用48字节,很明显是中文的样式。宝利通实际应该显示的名字 地州县市三级会议包里显示有很多得0X00,去掉0X00,可以得到e59cb0 e5b79e e58ebf e5b882 e4b889 e7baa7 e4bc9a e8aeae查询可以得到...
2019-11-27 14:48:32 545
原创 双流
1,视频会议中的双流技术就是指双视频流传送。一条传送开会时的活动场景,一条传送发言人的PC界面(可以发送正在操作的PPt,文档等)。2,附加的视频流传送是单向的,但是它是允许用户在会议两点之间切换发言者的,可以或多或少的解决一些问题3,两条媒体流之间共享呼叫带宽4,双流目前多用于厂商系统平台内部。不同厂商之间互通比较困难。...
2019-08-08 13:38:16 335
原创 本地模拟编译失败
2,了解本地模拟,打开kdv323adapter.vcxproj文件将所需的**.vcxproj进行一一添加,并生成解决方案sln。但是在添加好后 kdvdatanet总是编译不成功,提示打不开kdvencrypt.lib库,可是kdvencrypt.lib明明已经编译成功反复查找,最终发现kdvencrypt.lib库文件不知道为什么编译到了D:\流代码\20180416_CBB5....
2019-07-25 09:41:25 181
原创 svn检出流失败
1,安装svn,申请检出流 1)检出过程中总是出现错误,原因是由于win10自带的杀毒软件误杀导致的,百度查教程关闭杀毒软件再次检出就可以成功检出了...
2019-07-25 09:40:06 407
原创 静态库与动态库区别
1,区别:静态库是在编译期间完成的,而动态库的链接载入推迟到运行时期2,依赖关系:由于静态库在编译期间打包在执行文件中,静态库更新就需要重新打包发布,比较麻烦 而动态库的更新可以独立于依赖他的应用程序,只更新动态库即可...
2019-07-25 09:34:59 156
转载 引用与指针的区别
以下内容转自https://www.cnblogs.com/haoyul/p/7282613.html从概念上讲。指针从本质上讲就是存放变量地址的一个变量,在逻辑上是独立的,它可以被改变,包括其所指向的地址的改变和其指向的地址中所存放的数据的改变。而引用是一个别名,它在逻辑上不是独立的,它的存在具有依附性,所以引用必须在一开始就被初始化,而且其引用的对象在其整个生命周期中是不能被改变...
2019-07-11 19:34:46 153
转载 什么是mount?mount的意义
以下转自原文:https://blog.csdn.net/qq_39521554/article/details/79501714关于挂载的作用一直不是很清楚,今天在阅读教材时看见了mount这个命令,发现它的用处很隐晦但非常强大。奈何教材说的不明朗,因此在网上整合了一些优秀的解释,看完之后豁然开朗。1.提一句Windows下,mount挂载,就是给磁盘分区提供一个盘符(C,D,E,.....
2019-07-11 14:32:41 9047 2
原创 c++中string
1)需加头文件 <string>2)可直接通过等号来赋值 ”=“3)和C中不同的是,shring结尾不含 ”\0", 所以使用内置函数 Length()求出的长度就是字符串真实的长度。#include <stdio.h>#include <iostream>#include <string>using namespac...
2019-07-11 14:05:47 154
原创 C++const成员函数和const常对象
1)可以访问所有成员变量,但是不能修改,此类成员函数又称“常成员函数“。2)声明或实现时必须在函数的结尾加上const,而不是在函数的开头。int GetAge() const ///在结尾加{ m_age = 10; //会报错,不能进行修改 return m_age;}常对象1)常对象只能访问常成员函数,常成员变量和普通成员变量...
2019-07-11 11:20:58 180
原创 c++中static成员函数
1)只能访问static成员变量,因为静态成员函数没有this指针,不能指向具体的对象,所以不能访问普通的成员变量2)在函数体内可以通过类名去调用static成员函数,3)主要目的是去访问static成员变量(虽然声明为普通成员函数也可以,但加上static语义更明确)...
2019-07-11 10:41:28 703
原创 C++中static成员变量
1)static成员变量属于类,不属于某个具体的对象,即使创建多个对象,也只为static成员变量分配一个内存 所有对象都是这个内存里的statiic变量,如果对其做出修改也会影响到其他对象的使用2)static成员变量必须在类外进行初始化形如 type class ::name = value; //// int Parent ::count = 0;class ...
2019-07-11 10:34:50 672
原创 C++析构函数
1)析构函数用来释放分配的内存,关闭打开的文件句柄2)没有参数,不能被重载,若用户没有定义析构函数,系统会默认设置一个析构函数,在销毁对象是调用(在使用new创建对象时会调用构造函数,在使用delete销毁对象时会调用析构函数)...
2019-07-11 10:16:44 126
原创 C++中参数列表
1)参数列表的初始化顺序和初始化列表列出的顺序无关,只与它在类中声明顺序有关2)#include <stdio.h>#include <iostream>using namespace std;class Parent {public: int m_a; int m_b;public: Parent(int b): m_b(b), m_a(...
2019-07-11 09:56:58 6292 1
原创 C++中构造函数
属性设置为public,不然创建对象时无法调用。若非要设置成protected或private也不会报错,但是没有意义。没有返回值,因为没有变量来接收返回值,即使有也毫无用处1)不管是声明还是定义,函数名前都不能出现返回值2)函数体中不能有return语句3)构造函数的调用是强制性的,一旦声明了构造函数就一定要调用(若没有定义构造函数会默认调用无参构造函数,此函数没有形参也不执行任...
2019-07-11 09:24:32 95
原创 结构体中字典属性的值不能被修改
type Student struct{ name string}func main(){ m := map[string]Student{"people", {"aaa"}} m["people"] = "bbb"}报错:不能修改结构体中字典中的属性值 1 package main 2 3 import "fmt" 4 5 typ...
2019-04-17 17:01:44 946
转载 Go中defer释放函数内部变量
转自https://studygolang.com/articles/10167在golang当中,defer代码块会在函数调用链表中增加一个函数调用。这个函数调用不是普通的函数调用,而是会在函数正常返回,也就是return之后添加一个函数调用。因此,defer通常用来释放函数内部变量。为了更好的学习defer的行为,我们首先来看下面一段代码:func CopyFile(ds...
2019-04-17 15:54:05 1802
转载 Go中新值替换旧值
package main 2 3 import "fmt" 4 import "sync/atomic" 5 6 var Value int32 7 func SetVal(delta int32){ 8 // for{ 9 v := Value 10 if atomic.CompareAndSwapInt32(&...
2019-04-17 15:31:56 424
原创 Go中提前关闭通道
package main 2 3 import "fmt" 4 import "time" 5 6 func main(){ 7 ch := make(chan int, 5) 8 go func(){ 9 for i := 0; i < 10; i++{ 10 ch <- i 11 ...
2019-04-17 15:05:56 173
原创 结构体中属性大小写
1 package main 2 3 import "fmt" 4 import "encoding/json" 5 6 type People struct{ 7 Name string `json:"name"` 8 } 9 10 func main(){ 11 js := `{ 12 "name" : "11" 13...
2019-04-17 14:14:14 1366
原创 URI与资源
1,REST即表述性状态转移,所谓表述即资源,每个资源必须要用URI来表示,没有用URI来表示的不能称为资源,最多是资源的信息2,URI设计技巧2.1 使用_或-使URI具有更好的可读性eg:http://www.oschina.net/news/38119/oschina-translate-reward-plan2.2 使用 / 表示层级关系 eg:https://mp.csdn...
2019-04-15 15:43:35 339
原创 Go协程匿名与非匿名
通过通信共享内存,而不是通过共享内存通信1 package main 2 3 import ( 4 "fmt" 5 ) 6 7 func main(){ 8 c := make(chan bool) 9 10 go func(){ 11 fmt.Println("aaa") 12 c <...
2019-04-11 19:46:17 1450
转载 Go中闭包实现
转:https://studygolang.com/articles/13812?fr=sidebar4. 闭包 闭包(closure)是 javascript 的一大难点,也是它的特色。很多高级应用都是依靠闭包来实现的。 4.1 变量作用域 要理解闭包,首先要理解javascript的特殊的变量作用域。变量的作用域无非就两种:全局变量和局部变量。 注意语法规则...
2019-04-11 14:54:17 523
原创 Go中Range遍历Array, Slice
1, range用来遍历 array, slice,还有map 在array,slice中返回索引值还有数值 在map中返回键值对2,package main 2 3 import ( 4 "fmt" 5 "sort" 6 ) 7 8 func main(){ 9 m := map[in...
2019-04-11 14:51:28 1279
转载 Go中数组Array
1,数组定义格式: var array [10]int2, 数组长度也是类型的一部分,因此不同的长度的数组也是不同的·类型3,数组之间可以用 == , != 去比较,但不可以用 < > 去判断4,数组也可以用new去创建,返回一个指向数组的指针5,支持多维数组,但不推荐使用...
2019-04-11 13:39:09 310
转载 golang中协程详解
转:https://www.cnblogs.com/liang1101/p/7285955.html一、Golang 线程和协程的区别 备注:需要区分进程、线程(内核级线程)、协程(用户级线程)三个概念。 进程、线程 和 协程 之间概念的区别 对于进程、线程,都是有内核进行调度,有 CPU 时间片的概念,进行抢占式调度(有多种调度算法) 对于协程(用户级线程),这是...
2019-04-10 15:27:20 279
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人