自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (1)
  • 收藏
  • 关注

原创 TCP/IP网络编程基础阅读笔记

TCP/IP网络编程基础阅读笔记open函数该函数打开一个文件(linux下任何皆文件),返回文件描述符,失败返回-1int open(const char* pathname,int flags,mode_t mode)flags:文件打开方式的标志O_RDONLY:只读方式打开O_WRONLY:只写方式打开O_RDWR: 可读可写方式打开O_CREAT:若打开的文件不存在则创...

2018-12-05 16:48:19 745

原创 Linux下系统函数

Linux下系统函数rand()函数获取02147483647(0RAND_MAX)之间的随机数。真随机需要srand()设置种子。一般用时间作为srand()的参数#include<unistd.h>int rand(void)void srand(unsigned int seed)字符函数头文件<ctype.h>函数名功能isal...

2018-12-05 16:42:16 2973

原创 散列

散列

2021-04-24 10:07:44 368 1

原创

树以下所有地方均不考虑空树的情况由根节点和无数子树构成的结构。#mermaid-svg-PcF3Q08YDkJUM9ti .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-PcF3Q08YDkJUM9ti .label text{fill:#333}#mermaid-svg-PcF3Q08YDkJUM9ti

2021-04-23 08:59:25 132

原创 数据结构-线性表

线性表有限元素组成的序列,这里的元素可以是一个数字,字母,一句话,或者一个对象等等。实现方式连续空间顺序实现数组ABCD优点支持随机访问,即下标访问缺点存储的数据必须是一种类型改进:由于存储的数据类型必须相同,为了能够存储不同类型的数据,这里可以将不同类型元素地址取出,任何类型的地址在本质上都是一样类型(32位机器则是4字节整数,64位机器是8字节整数)的数据,所以只要我们标记好这个指针到底是什么类型的指针,后面取出数据时就能正确转换成原来的指针类型即

2021-04-20 23:33:43 113

原创 bshel笔记

bash shell#!/bin/bashecho "hello world";位置参数和变量参数描述$0shell脚本名$0–$9命令行参数对应的值$*命令行中所有的参数,如果$*被""包括,则参数之间用环境变量IFS中的第一个字符隔开$@命令行的所有参数,如果$@被""包括,所有参数不会结合在一起。(可用于遍历)$#命令行参数的个..

2018-12-06 09:09:32 137

原创 GCC笔记

GCC参数说明-ansi依据ANSI标准-c跳过连接步骤直接生成目标文件(.o)-g添加gdb调试信息到程序,调试程序时使用。-m 类型根据给定CPU类型优化代码-o 文件名生成可执行文件-O [级别]指定优化级别0~3,越大程度越高,默认0-S跳过汇编和连接阶段,并保留汇编代码(.s)文件-v产生尽可能多的输出信息...

2018-12-06 09:09:20 140

原创 GDB笔记

GDB要想程序能够被gdb调试,那么用gcc编译时就要添加-g选项gcc x.c -o x.out -ggdb [选项] [可执行程序] -c core文件 指定core文件检查程序 -h 帮助 -n 忽略~/.gdbinit文件中指定的执行命令 -q 禁止显示介绍信息和版权信息 -s 文件...

2018-12-06 09:08:58 171

原创 ES6学习笔记

ES6let const之前版本的js都是用var声明变量的,且作用于为全局。let 声明局部变量.作用于声明的代码块,且严格遵循先声明后使用。暂时性死区var ttt = "";function a(){ ttt = "ccc";//出现错误 let ttt;}因为let声明的变量在声明的区域内作用,且遵循先声明后使用的原则,所以在a()函数中给ttt赋值是不...

2018-12-06 09:08:46 136

原创 软件的插件原理

常见软件的插件原理?很多软件都支持安装插件,比如我们常用的ide都是支持安装插件的。手动安装插件在windows/linux下手动安装插件。下载插件插件往往是一个dll、so文件或者zip等压缩文件将下载的插件放入软件的插件目录重启软件背后原理下载的插件是一个dll、so库。将这个库放入插件目录是为了让软件自动加载这个插件。软件怎么加载呢?首先扫描插件目录,将所有dll...

2018-12-06 09:08:35 2657

原创 windows下配置双网

配置原理:    修改电脑的默认路由。    比如外网数据通过wifi出去,内网数据通过有线网卡出去。    将电脑默认路由网关配置成wifi网关,将内网网段IP配置成有线网卡网关。    windows下:        使用route命令:route add -p 网络 mask 掩码 网关        route add -p 10.0.0.0 mask 255.0...

2018-12-06 09:08:24 485

原创 如何实现不限类型的栈或队列

如何实现不限类型的栈或队列?猜想的实现方式:采用union这种特殊的结构体实现各种类型的表示。结构体设计:struct{ int type; union Data{ char chr; unsigned char uchr; short sht; unsigned...

2018-12-06 09:08:14 156

原创 Linux内存不足,添加swap分区

Linux内存不足,添加swap分区swap分区属于交换分区,起虚拟内存的作用。由于内存资源的宝贵,于是将硬盘的一部分作为内存来使用。所以在内存不足的时候,就可以通过适当的增加交换分区大小来达到增加内存的作用。在编译mysql5.7.23的时候,购买的服务器内存只有1G,没有分配swap分区。最后在make的时候报错。网上查阅是内存不足的原因。c++: internal compiler e...

2018-12-05 16:40:10 871

转载 vim 常用快捷键

vim 常用快捷键文件操作:e file --关闭当前编辑文件并打开新的文件file,如果对当前文件修改未保存,vim会警告:e! file --同上,不警告:e+ file --打开新文件并将光标定位到新文件尾部:e+n file --打开新文件并将光标定位到第n行开始编辑:e newfile --编辑一个新文档:e --重新加载本文档:e! --重新打开本文档并忽略所做的修改...

2018-12-05 16:39:20 154

原创 extern "C"

extern “C”extern “c” 是为了让C++能够正确的调用C语言代码。由于C语言不支持重载,在编译时,函数签名就只有一个函数名。而C++的函数支持重载,那么为了区分不同函数,C++在生成函数签名时将函数的参数类型也纳入了其中。比如:int func(int ,int)。在C语言中生成的函数签名可能是 _func_;而在C++中生成的函数签名可能是_func_int_int。下...

2018-12-05 16:37:28 98

原创 编程规范

编程规范版权和版本声明内容:版权信息。文件名称,标识符,摘要。当前版本号,作者/修改者,完成日期。版本历史信息。/*** Copyright ……* All rights reserved.* * 文件名称:* 文件标识:* 摘要:* * 当前版本:* 作者:* 完成日期:* * 取代版本:* 原作者:* 完成日期:*/版式空行每个类声明之...

2018-12-05 16:36:06 216

原创 go-flow源代码解读心得

go-flowgo get github.com/kamildrazkiewicz/go-flow使用方法 func main() { f1 := func(r map[string]interface{}) (interface{}, error) { fmt.Println("function1 started") time.Sleep(time.Millisecond *...

2018-12-05 11:54:11 4175

原创 map,struct互转

判断某个值是否在某个切片中/**@func: 判断某个值是否在某个切片中@param: val: 要查找的值 slice: 寻找的切片@return int 查找到的下标,如果没有找到返回-1 error 错误信息*/func inSlice(val interface{},slice...

2018-12-05 11:52:55 1836

原创 Go 生成C动态库.so和静态库.a

Go 生成C动态库.so和静态库.a源代码package mainimport "C"import "fmt"//export hellofunc hello(){ fmt.Println("hello world")}//export addfunc add(a,b int) int { return a+b}

2018-12-05 11:51:19 14184 1

原创 Go生成go动态库或静态库

Go生成go动态库或静态库预备知识plugin模式插件运行方式go plugin包使用相关知识go build 可以指定buildmode。分为了多种模式。具体模式如下。模式说明当前go版本1.10.3archive编译成二进制文件。一般是静态库文件。 xx.ac-archive编译成C归档文件。C可调用的静态库。xx.a。注意要编译成此类文...

2018-12-05 11:49:27 6170 2

一次面试go的面试题

一次面试go语言的过程中,记录下来的题目。里面很多考点,很多来自另一个网上的面试资源。非原创,但是有一些是原创的。

2018-12-05

空空如也

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

TA关注的人

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