- 博客(156)
- 收藏
- 关注
原创 PhpStorm - PHP代码格式化
格式化快捷键: CTRL + ALT + L 配置等号对齐: 1. Setting 2. Editor 3. Code Style 4. PHP 5. Wrapping and Braces 6. 勾选Align consecutive assignments配置key-value对齐: 1. Setting 2. Editor 3. Code Style 4. PH...
2018-08-28 15:15:04 5762
原创 SI - 关闭Folder Browser的实时浏览
默认配置下Folder Browser是会实时浏览的,也即当前查看的是哪个文件,Folder Browser便会自动切换到该文件目录,但有时我们可能并不需要这个功能,而是希望Folder Browser一直指向一个指定的目录。取消流程: 1. 打开Folder Browser窗口 2. 空白位置右键,打开Project Folder Browser Options 3. 取消Option...
2018-08-12 22:34:42 602
原创 Git - 冲突解决
当进行存在冲突的代码合并时,合并过程中会出现CONFLICT (content): Merge conflict in xxxx的信息,同时使用git status查看时可以查看到both modified:xxx,也即发生了冲突的文件。打开这些冲突的文件,里面将会出现git的冲突标记,如下:<<<<<<< HEAD我们的修改=======...
2018-08-12 22:34:32 3148
原创 SI - 标题栏路径显示完整路径
OptionsPreferencesDisplayTrim long path names with ellipses(把复选框的勾选去掉。) trim vt. 修剪;整理;装点 vi. 削减 n. 修剪;整齐;情形 adj. 整齐的 ellipses n. 椭圆(ellipse的复数);省略号(ellipsis的复数)...
2018-08-12 22:34:18 1036
原创 PPP、PPPoE、VPDN、L2TP简介
PPP(Point to Point Protocol,点对点拨号协议)一种具有身份校验、动态IP分配等功能的点对点拨号协议(通过其定义的LCP、CHAP、IPCP等类型报文交互实现)。因为IP协议无法直接在模拟信号中进行传输(需要进行调制解调),但PPP协议能直接应用在点对点链路上,同时其支持多种网络传输介质,比如电话线、无线信号、串口等等,所以通常会使用PPP协议来封装IP协议,这样便...
2018-07-26 11:48:24 8338
原创 2018.07.06《代码整洁之道 程序员的职业素养》
职业引导系列的书,内容还是有一定的参考意义的,讲述了作者自身很多的一些案例,对于新手等还 是很好的。读完后感触最大的还是对TDD的重新认识,自动化测试的意义。但职业素养肯定还是需要长时间的经验积累加自身的习惯养成。...
2018-07-06 09:23:37 754
原创 Git - 空文件夹
GIT是依靠文件来识别文件夹的,对于空的文件夹是不能识别的,所以如果将==一个文件夹下的所有文件都删除后这个文件夹也会被自动删除==。一个可以规避这种特点的技巧就是在这个文件夹下创建一个空的.gitignore文件,这个这个文件夹就不是一个空文件夹,同时.gitignore文件也会被GIT自动忽略。如下的快捷命令可以为所有空文件夹自动添加一个.gitignore文件:find . ...
2018-07-05 16:22:38 1609
原创 PhpStorm - Ctrl+Shift+F 搜索无效
一般是热键冲突,搜狗默认的简繁切换组合键位ctrl+shift+F,故失效了的话,应该能看到搜狗输入法状态的简繁变动。解决方法进入搜狗设置,按键-取消选中简繁切换热键即可。...
2018-06-27 23:35:47 3781
原创 2018.06.24《PHP和MySQL Web开发》
神书,原来做毕设就用到的一本书,PHP还是蛮强大的,上手也快,Mysql也是比较经典的数据库,整个的web环境也容易搭建,再加上这本书十分详细的用例讲解则十分容易上手。整数除了一些基础语法介绍外大部分都是实例讲解,经典之书。...
2018-06-24 23:41:20 1021
原创 LUA中方便的代码开关
LUA中没有宏,也就不能使用像C中用宏来方便的开关代码,如下:#if 0 代码关闭#endif#if 1代码打开#endif但可以通过注释来变相实现,如下:--[[代码关闭--]]---[[代码打开--]]代码关闭时,便是一个一般的块注释,里面的代码被注释掉了代码打开时,便是两个单行注释,里面的代码得以运行...
2018-05-25 23:56:59 1914
原创 C语言中什么技术可以代替宏定义
inline,内联函数,==以代码体积变大为代价,可减少函数调用的开销,需注意内联是不可重入的(自己再调用自己)==。与带参宏定义相比,inline函数具备以下优点: - 参数类型检查:宏定义中所使用的参数仅仅是在宏定义中被替换,不进行任何的类型检查 - 返回值:宏定义中无法使用return返回 - 便于调试...
2018-05-24 00:59:18 1385
原创 变相实现continue
Lua 里没有 continue 这个关键词,有时候挺不方便,可能导致循环里的 if-then 嵌套比较深。但我们可以用一个小技巧来实现同等功能:for i = 1, 100 do while true do if i % 2 == 1 then break -- 这里的break便等同于continue的跳出 end...
2018-05-22 00:06:58 258
原创 SVN - 冲突说明
A、B用户同时从服务器上检出了一个文件text1.txt,则此时A、B、服务器三个地方的text1.txt版本可均假设为一个13。B用户先对该文件进行修改,然后提交服务器后,则此时B、服务器两个地方text1.txt版本则变为了14,A则依旧为13。此时A用户也修改了text1.txt,但与B用户的修改存在了冲突,比如修改了同一行,但内容不同,则此时A用户的提交便会提示存在冲突。A提交...
2018-05-06 21:59:09 339
原创 2017.07.19《编写高质量代码:改善C程序代码的125个建议》
神书,讲解了C语言很多细节的地方,也是很多容易出错的地方,但还是需要一定的基础才能较好阅读的,对C语言的深入学习很有作用,来回读了2遍。
2017-07-19 01:02:08 1612
原创 NULL和0的区别
一、什么是空指针常量(null pointer constant)? [6.3.2.3-3] An integer constant expression with the value 0, or such an expression cast to type void *, is called a null pointer constant.这里告诉我们:0、0L、'\0'、3 - 3、0
2017-06-26 00:27:16 9876
原创 BFD - 双向转发检测
英文: Bidirectional Forwarding Detection 中文: 双向转发检测机制 介绍: 它是一个用于检测两个转发点之间故障的网络协议,在RFC 5880有详细的描述。BFD是一种双向转发检测机制,可以提供毫秒级的检测,可以实现链路的快速检测,BFD通过与上层路由协议联动,可以实现路由的快速收敛,确保业务的永续性。BFD Echo报文采用UDP封装,目的端口号为3785,源
2017-06-21 01:05:57 4796
原创 SmartBits - 简介
首先需要理解SMARTBITS的一些特点: SMARTBITS的每块卡均有独立的收发器,==即收和发是分开的==SMARTBITS==不做任何交换和路由,只能作为流量发生器和流量分析器== SMARTBITS作为流量发生器,可以产生各种长度、类型的包,可以手动修改各种包的 包头,对于CUSTOM型的包还可修改包的数据段;对于SMARTMetrics卡,还可以工作在METRICS方式下,可
2017-06-20 00:43:45 3676 1
原创 指针使用%p输出,区分%x与%p的区别?
几年前写的一个模块,前几天准备把它拿出来编译成64位的版本使用,因为对于windows的API一直是按照参数微软文档给出的原型进行调用,也没有指针到整数的强转,因此整个编译几乎没遇到问题,直接生成64位版本,但是测试时发现一个问题,所有的运行log输出的地址值都不对,64位系统下log里记录的还是32位的地址值,显然是被截断的地址值。看了一下代码,原来所有指针的格式化用的都是”%x”,真是欲哭无泪,
2017-04-11 00:24:17 14933 6
原创 520. Detect Capital - 单词大小写合法性检测
hhttps://leetcode.com/problems/detect-capital/分析简单的字符串合法性检测,只能是首字母大写或全字母大写。bool detectCapitalUse(char* word) { int wordLen = strlen(word); int i = 0; int stat = 0; if ((word[0] >= 'A') &
2017-03-12 03:33:50 437
原创 485. Max Consecutive Ones - 最大连续个数
https://leetcode.com/problems/max-consecutive-ones分析也就是找一个二进制数组中最大的连续1的个数,简单点就遍历统计就可以了。int findMaxConsecutiveOnes(int* nums, int numsSize) { int i = 0; int maxLen = 0; int tmpLen = 0; fo
2017-03-12 02:59:09 449
原创 476. Number Complement - 最高比特位后取反
https://leetcode.com/problems/number-complement/分析也即把一个数最高比特位后的比特位取反即可,关键要找出最高比特位,简单的位操作,十几分钟搞定,位操作使用还要加强,神技能啊。实现int findComplement(int num) { int i = 0; int tmp=0; int max=0; for(i=0;i
2017-02-10 01:08:11 750
原创 500. Keyboard Row - 是否为键盘行序列
hhttps://leetcode.com/problems/keyboard-row/分析判断所给的各个序列是否是有键盘中的一行字母能够组成的,写的比较简单,也没用什么算法,简单的字符串匹配加判断,没有拆分封装函数,写的比较啰嗦,还用了goto,有下面几点需要关注:goto语句后面不能直接结束,至少还需要有一条语句,否则会报错动态二维数组内存申请,先申请行指针,再申请列内存实现/** *
2017-02-08 01:42:44 809
原创 1. Two Sum - 两数求和
https://leetcode.com/problems/two-sum/分析从数组中找出两个能相加等于指定值的组合,肯定可以采用一些比较高级的算法,循环遍历是最简单粗暴的。。。实现/** * Note: The returned array must be malloced, assume caller calls free(). */int* twoSum(int* nums, int
2017-02-08 00:10:53 432
原创 sourceinsight - 完美支持中文注释
Project→Open Project,打开Base项目,将文中代码框中的所有内容函数复制到utils.em文件的最后; 重启SourceInsight; Options→Key Assignments,将下面宏依次与相应按键绑定: Marco: SuperBackspace绑定到BackSpace键;Marco: SuperCursorLeft绑定到<-键,Marco: Super
2016-12-19 00:15:22 775
原创 sdk - 软件开发工具包
英文: Software Development Kit 中文: 软件开发工具包 介绍: 软件开发工具包括广义上指辅助开发某一类软件的相关文档、范例和工具的集合。软件开发工具包是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等创建应用软件的开发工具的集合,一般而言SDK即开发Windows平台下的应用程序所使用的SDK。==它可以简单的为某个程序设计语言提供应用程序接口API的
2016-12-05 23:52:17 7188
原创 True Form - 原码
英文: True Form 中文: 原码 介绍: 是一种计算机中对数字的二进制定点表示方法。原码表示法在数值前面增加了一位符号位(即最高位为符号位):正数该位为0,负数该位为1(0有两种表示:+0和-0),其余位表示数值的大小。 也即最高位用于表示数值的正负,==0正1负==,其余位用于表示这个数的数值大小。例,我们用8位二进制表示一个数,+11的原码为00001011,-11的原码就是100
2016-12-05 23:51:54 444
原创 polling - 轮询
英文: Polling、Programmed I/O 中文: 轮询、程控输出入 介绍: ==是一种CPU决策如何提供周边设备服务的方式==,又称“程控输出入”(Programmed I/O),轮询法的概念是:由CPU定时发出询问,==依序询问每一个周边设备是否需要其服务,有即给予服务,服务结束后再问下一个周边,接着不断周而复始。==轮询法实作容易,但效率偏低。
2016-12-05 23:51:15 1214
原创 pci - 外围器件互联
英文: Peripheral Component Interconnect 中文: PCI总线、外围器件互联 介绍: 它是目前个人电脑中使用最为广泛的接口,几乎所有的主板产品上都带有这种插槽。PCI插槽也是主板带有最多数量的插槽类型,在目前流行的台式机主板上,ATX结构的主板一般带有5~6个PCI插槽,而小一点的MATX主板也都带有2~3个PCI插槽,可见其应用的广泛性。 是由PCISIG(P
2016-12-05 23:50:56 398
原创 environment variables - 环境变量
英文: Environment Variables 中文: 环境变量 介绍: 一般是指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹位置和系统文件夹位置等。相当于给系统或用户应用程序设置的一些参数,具体起什么作用这当然和具体的环境变量相关。比如 path,是告诉系统,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目 录下面寻找此程序外,还应到哪些目录下去寻
2016-12-05 23:50:24 8837 1
原创 bus - 总线
英文: Bus 中文: 总线 介绍: 是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束。按照计算机所传输的信息种类,计算机的总线可以划分为: 1. 数据总线: 传输数据 2. 地址总线: 数据地址 3. 控制总线: 控制信号总线是一种内部结构,它是cpu、内存、输入、输出设备传递信息的公用通道,主机的各个部件通过总线相连接,外部设备通过相应的接口电路再与总线相连接,
2016-12-05 23:50:01 852
原创 cli - 命令行界面
英文: Command Line Interface 中文: 命令行界面 介绍: 是指可在用户提示符下键入可执行指令的界面,它通常不支持鼠标,用户通过键盘输入指令,计算机接收到指令后,予以执行,使用CLI具有使用要求低(只需要串行口),容易使用,功能扩充方便等优点,特别是当有很多(如10台)台路由器设备需要配置的时候,可以通过COPY/PASTE功能很快完成所有路由器的配置。
2016-12-05 23:49:35 1681
原创 cluster - 簇
英文: Cluster 中文: 簇 介绍: 数据存储在硬盘的时候都是以簇位单位,所以无论文件大小是多少,除非正好是簇大小的倍数,否则文件所占用的最后一个簇或多或少都会产生一些剩余的空间,且这些空间又不能给其它文件使用,即使这个文件只有0字节,也不允许两个文件或两个以上的文件共用一个簇,不然会造成数据混乱。 ==也即簇强调的就是一个固定块缓冲区的概念,只能整块整块的使用。==
2016-12-05 23:48:58 386
原创 mq - 消息队列
英文: Message queue 中文: 消息队列 介绍: 消息队列是在消息的==传输过程中保存消息的容器==,如名字所示,本质就是一个队列,关键是队列中的元素为“消息”。消息队列首先肯定符合对列“先进先出”的特性,但也不完全符合,例如会根据不同消息的优先级对消息在队列中的顺序做调整,高优先级的消息会放置队列头优先处理。消息队列也就相当于是一个缓冲区,一边可以不断将各种消息往消息队列中送,另一
2016-12-05 23:48:39 512
原创 gui - 图形用户界面
英文: Graphical User Interface 中文: 图形用户界面、图形用户接口 介绍: 指采用图形方式显示的计算机操作用户界面,图形用户界面是一种人与计算机通信的界面显示格式,允许用户使用鼠标等输入设备操纵屏幕上的图标或菜单选项,以选择命令、调用文件、启动程序或执行其它一 些日常任务。与通过键盘输入文本或字符命令来完成例行任务的字符界面相比,图形用户界面有许多优点。图形用户界面由窗
2016-12-05 23:48:05 1130
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人