自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

躬行纸上浅知

个人实践合集

  • 博客(64)
  • 资源 (1)
  • 收藏
  • 关注

原创 【C语言】小写数字金额转换成中文大写金额

特点:1. 输出支持的最大单位是万京(=万亿亿),输入串整数部分最大支持30个数字2. 输入串支持使用逗号分隔3. 使用状态机检查输入串的正确性并在此过程中将特殊位置标记出来4. 统一了错误信息的格式,并在第一处错误的地方及时返回5. 方便进行最大位的扩展,只需要在CHN_UNIT最后添加对应的数位即可

2021-10-22 14:19:57 4201 7

原创 【BASH】Linux30个常用命令技巧

文章目录01、Vim自动添加注释及智能换行02、查找并删除/data这个目录7天前创建的文件03、tar命令压缩排除某个目录04、查看tar包存档文件,不解压05、使用stat命令查看一个文件的属性06、批量解压tar.gz07、筛除出文件中的注释和空格08、筛选/etc/passwd文件中所有的用户09、iptables网站跳转10、iptables将本机80端口转发到本地8080端口11、fi...

2018-12-20 09:40:57 401 1

原创 【BASH工具】标准的bash函数的创建模板

#!/usr/bin/env bashnewBashFunc() { local gfunc=$FUNCNAME function tmpl() { cat } <<'NEW_BASH_FUNC_DEFINE'#!/usr/bin/env bash#=======================================================...

2018-12-14 16:17:14 213

原创 【BASH工具】获取网卡所在网络中IPv4地址的使用情况(在用的及可以配置的)

#!/usr/bin/env bash#=================================================================# CPSTR: Copyright (c) 2018 By Abodu, All Rights Reserved.# FNAME: getAvailableIPAddr.sh# AUTHR: abodu,abodu@qq...

2018-12-04 14:09:26 253

原创 【BASH工具】快速切换常用的目录

#!/bin/bash#=================================================================# CPSTR: Copyright (c) 2018 By Abodu, All Rights Reserved.# FNAME: util_cdt# AUTHR: abodu,[email protected]# CREAT: 2018-05...

2018-07-28 17:13:59 446

原创 正则表达式-邮箱有效性验证

邮箱有效性需满足的验证逻辑

2017-11-12 14:33:27 129653 11

原创 【BASH 函数】判断给出的字符串是否为合法的IPv4地址

isLegalIPv4 检测是否为合法 IPv4 的地址

2017-09-26 00:23:07 1274

原创 【BASH】完全版本的 bash 变量替换

总结关于BASH中变量的内部替换备忘

2016-06-20 13:18:08 1764

原创 【BASH】三十六进制转十进制的shell函数

【代码】【BASH】三十六进制转十进制的shell函数。

2023-05-19 01:19:09 137

原创 【WebIDE】 code-server 使用 vscode 原生插件市场地址

code-server 使用 vscode 原生插件市场地址

2022-03-01 09:08:11 4502 4

原创 【Docker】封装docker相关的命令

1. 具体步骤step 1: 安装所需的工具程序step 2: 安装GPG证书step 3: 更新 apt sources.liststep 4: apt 安装 docker-cestep 5: 更新 /etc/docker/daemon.json 文件step 6: 迁移 docker 目录 到 /data/docker2. 一键安装脚本内容如下_setupDocker() { local flg=0 # [检查是否强制重新安装] [ X$flg = X0 ] &&

2021-12-08 15:13:08 1006

原创 Ubuntu一键安装code-server体验WebIDE的爽快

docker 安装 code-server

2021-10-14 17:18:51 756

原创 2021-07-05 加速vim-plug安装插件的下载

最近在捣鼓我的neovim配置,发现使用的 vim-plug 下载插件的时候会卡住迟迟无法完成然后 查看vim-plug.vim的源码发现 作者提供了未说明的全局变量 plug_url_format重新设置这个变量的值到国内github国内的镜像可以加速插件的下载具体的做法如下"在 调用 call plug#begin('~/.config/nvim/plugged') 之前 设置plug_url_format即可let g:plug_url_format='https://git::@hub.f

2021-07-05 10:27:36 2366 2

原创 nodejs 在Win10下面的环境变量的配置

笔者使用的是 v16.14.2 版本安装的路径为 C:\ms\nodejs1. 下载windows上可用的nodejs安装包# 下载路径为https://nodejs.org/dist/latest-v12.x/node-v12.22.0-x64.msi下载完毕后一路 NEXT 安装即可完成后需要手动创建文件夹 C:\ms\nodejs\node_caches2. 配置环境变量# 查找 环境变量设置# 【<WIN> + x】->【高级系统设置】->【环境变..

2021-03-31 17:37:51 1193

原创 【C语言】朴素方式求小于1000以内的素数

//若n是素数则返回0,否则返回1int is_prime(int n) { switch (n) { case 2: case 3: case 5: case 7: case 11: case 13: case 17: case 19: case 23: case 29: case 31: case 37: case 41: case 43: case 47: return 0; default: for (int i.

2020-11-04 08:38:57 580

原创 【bash】根据指定目录下的模块源码文件生成用于编译Linux模块的Makefile文件

说明:脚本的用法见执行 bash mod_new_makefile.sh --help 的结果脚本内容如下#!/usr/bin/env bash#=================================================================# CPSTR: Copyright (c) 2019 By Abodu, All Rights Reserved....

2019-08-27 16:35:40 202

原创 【Linux内核】Linux内核模块编译时使用的Makefile文件模板

此模板文件支持 使用【aarch64-linux-gnu-】交叉编译工具链 进行交叉编译到arm64 平台上KVERS := $(shell uname -r)KSRCDIR = /lib/modules/$(KVERS)/build#若定义了HC_KSD变量, 则以HC_KSD的取值替换默认的linux内核代码路径(/lib/modules/$(KVERS)/build)ifdef HC...

2019-08-14 09:38:17 462

转载 【网络通信】如何在新浪网上观看《不差钱》视频片段

背景网络技术是原理上互相独立,但在通信过程中相互配合共同完成网络通信;人们习惯上把技术按照网络技术层次进行划分;通信过程中是层次对等通信.比如ARP协议只能正确的理解ARP数据,不可能和DHCP互通此文意在揭示如何进行访问互联网及局域网通信的过程如何在新浪上看春晚视频片段《不差钱》当我们在浏览器中输入http://www.sina.com.cn按下回车键后,访问的动作是什么...

2019-01-03 14:20:28 476

原创 字符串转换成二进制(限定只转换大小写字母)

#include &amp;amp;amp;amp;lt;stdio.h&amp;amp;amp;amp;gt;void dectobin(int n){ long result = 0; int k = 1; while (n) { result += k * (n % 2); k *= 10; n /= 2; } printf(&amp;amp;amp;quot;%08d\n&amp;amp;amp;quot;, result);}

2018-12-29 16:08:31 2374

原创 【编程-C】日志打印宏的定义与提示

#ifndef _THIS_FUNC_#define _THIS_FUNC_ __FUNCTION__#endif#define _ab_dump(format,prefix,out,...) \ fprintf(out,&quot;%s %s, %ld : &quot;format&quot;\n&quot;,prefix, __FILE__, __LINE__, ##__VA_ARGS__)#define...

2018-10-25 19:36:07 241

原创 PC机与交换机通信的原理描述

描述两台PC主机(PC1,PC2)通过一台交换机(SW)进行通讯的过程首要说明与注意点:这一过程涉及PC主机的ARP表(记为 ARP_TBL) 和 交换机MAC地址表(记为MAC_TBL) 的形成过程。报文帧格式| DA | SA | TYPE | .... |交换机 学习 SA地址,向转发 DA地址具体过程描述一、 PC1在自己的ARP表(ARP_TBL_PC1)中查找...

2018-10-18 14:46:34 3602 1

原创 【总结】数组指针和指针数组的区别

数组指针(行指针) int (*arrayPtr)[10] / int(*)[10] arrayPtr&quot;指向数组的指针&quot;的简称32位系统下 它占用的内存空间永远是 4 Bytes.指针自增的步长是由数组的长度决定(一次跨过 数组长度 * sizeof(数组类型) 个字节)指针数组 int* arrayPtr[10]&quot;储存指针的数组&quot;的简称数组的元素都是指针占用的内存...

2018-10-07 22:29:51 187

原创 杂项简记(1)

C Codesstr2dec//MACROS#define NUM(c) (c - '0')int str2dec(str,num){ num = NUM(*str++); while(isdigit(*str)) { num *= 10; num += NUM(*str++); } return num; }C/C++ 宏的展开规则...

2018-08-27 15:10:51 204

原创 函数设计原则

什么是好函数 – 简单就是美 功能单一 结构简单 入参少 短小精悍 可读性高 健壮 可维护性 见名知意 函数命名 使用动宾词组命名,函数名能够反映该函数的功能 函数名采用大小写混写的方式,不允许使用下划线 使用帕斯卡或者驼峰命名规则 不要使用太抽象的词,例如:deal、process、execute ...

2018-08-07 09:04:59 858

原创 C/C++安全编程条例

术语定义规则:编程时必须遵守的约定。建议:编程时必须加以考虑的约定。说明:对此规则/建议进行必要的解释。错误示例:对此规则/建议从反面给出例子。推荐做法:对此规则/建议从正面给出例子。通用规则规则1:对外部输入进行校验说明:软件最为普遍的缺陷就是对来自客户端或者外部环境的数据没有进行正确的合法性校验。这种缺陷可以导致几乎所有的程序弱点,例如Dos、内存越界、命令...

2018-08-05 13:10:25 15568 1

原创 【总结】C语言中typedef 的用法与陷阱

在日常的研发活动中,发现有很多地方用到typedef和#define,现将程序中经常用到的和误区总结一下。1. 简化代码,提高程序的可读性  在程序中经常正确的使用 typedef 可以有效的增加代码的可读性、可维护性,试着比较下面的两段代码//代码1int (* myFunc(int (*pf)(const char *, const char*)))(const char...

2018-07-31 09:09:17 6223 4

原创 【读书笔记】《程序员的自我修养 - 连接、装载与库》 (CH02) 编译与链接

本章导语  日常应用程序开发,我们很少需要关注编译和链接过程,IDE一般都将编译和链接的过程一步完成,形成 构建(Build)。但此过程中,我们往往会被这些复杂的集成工具所提供的强大功能所迷惑,很多系统软件的运行机制与机理被掩盖,其程序的很多莫名其妙的错误让我们无所适从,面对程序运行时种种性能瓶颈我们束手无策。我们需要透过现象看本质,深入理解整个过程的机制,才能游刃有余的解决这些问题。...

2018-07-27 17:00:06 412

原创 【读书笔记】《程序员的自我修养 - 连接、装载与库》 (CH01) 温故而知新

SECT-1 简介CH-01. 温故而知新1.1 从 Hello world 说起1.2 万变不离其宗1.3 站得高,望得远1.4 操作系统做什么1.4.1 不要让 CPU 打盹1.4.2 设备驱动1.5 内存不够怎么办1.5.1 关于隔离1.5.2 分段(segmentation)1.5.3 分页(Paging)1.6 众人拾柴火焰高1.6.1 线程基础...

2018-07-24 13:25:17 224

原创 【读书笔记】《程序员的自我修养 - 连接、装载与库》导读

导读:《程序员的自我修养》- 连接、装载与库SECT-1 简介CH01 温故而知新SECT-2 静态链接CH02 编译和链接CH03 目标文件里有什么CH04 静态链接CH05 Windows PE/COFFSECT-3 装载与动态链接CH06 可执行文件的装载与进程CH07 动态链接CH08 Linux 共享库的组织CH09 Windows 下的动态链接...

2018-07-24 11:53:57 213

原创 【阅读笔记】[初级篇]跟我一起学习Docker

1. 后端程序员如何提高技术2. [初级篇]跟我一起学习Docker一. 认识Docker二. 核心概念三. 镜像的基本操作四. 容器的基本操作五. 仓库(略.)六. 数据管理1. 后端程序员如何提高技术深度阅读国内外的书籍 代码质量涵盖的方面比较广,命名规范、算法效率、可读性、可维护性、设计合理性、扩展性、健壮性. 基本上看一些书是必须的,...

2018-07-22 23:02:08 201

原创 正则表达式基础

正则表达式简介简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具。我们可以在几乎所有的基于UNIX系统的工具中找到正则表达式的身影,例如,vi编辑器,Perl或PHP脚本语言,以及awk或sed shell程序等。此外,象JavaScript这种客户端的脚本语言也提供了对正则表达式的支持。由此可见,正则表达式已经超出了某种语言或某个系统的局限,成为人们广为接受的概念和功能。

2017-11-12 13:55:42 294

原创 Log4J的配置详细说明

Log4J的配置详细说明

2016-08-06 11:27:23 557

原创 区分 C++ 指针跟引用

C++ 中引用及指针的简单甄别

2016-01-18 14:47:20 384

原创 读取Wave格式语音头信息的实现

读取符合RIFF标准WAVE语音的头信息

2015-08-18 16:01:37 1614

原创 直接插入排序算法的原理与实现

直接插入排序的原理及实现

2015-08-18 11:19:56 1350

原创 Linux下vim配置文件(无第三方插件版本)

update log:1.remove all other plugins at all2. needs vim version > 7.03. UD_CommentToggle do comment for some filetype4. UD_UpdateInfo

2015-05-14 20:30:01 876

原创 查找字符串中指定的子串的首次出现的位置

在目标串中查找模式串的首次出现的位置(偏移量)外加自己实现的新版本 复制字符串的前N个字符

2015-05-05 22:16:58 1538

原创 在字符串中找到全部是由指定的字符组成的最长子串

在一个字符串中找到可能的最长的子字符串(该子字符串由同一字符组成)

2015-04-30 08:03:58 1302 1

原创 Java中 static、final 用法小结

Java中 static、final 用法小结

2015-04-30 04:10:49 815 1

原创 数据结构笔记--线性表(下)

2.2.3 线性链表(线性表的链式存储结构)线性链表: 用一组任意的存储单元来存储线性表中的数据元素,并用指针域实现逻辑上相邻的关系

2015-04-25 10:48:33 591

Bash字符串常用操作

本文档是自己总结的关于 bash shell 的字符串的操作合集, 并生成了可以复制内容的pdf 以保持排版

2019-04-22

空空如也

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

TA关注的人

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