自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(131)
  • 资源 (15)
  • 收藏
  • 关注

转载 函数指针入门使用方法以及回调函数

*定义函数指针*/在定义一个函数之后,在编译后,系统会为函数分配一段存储空间。,而函数指针也是一样,只不过保存的是函数存储空间的。/*函数指针赋值*/函数指针也可以当作参数在函数之间传递。如何在C语言中使用函数指针。/*函数指针使用*/............

2022-08-14 17:44:26 212 1

转载 C中main函数传参

在进行C语言编程时,有时候需要使用命令行传参,下面对其进行一个分析。int argc 命令行参数个数(包含文件名)const char* argv[] 指针数组:将命令行参数首地址作为元素,加上const关键字的意思是数组中的内容是不能修改的,很明显,我们进行传参的时候,里面的内容是不需要修改的,这就是const关键字的真正含义!{}...

2022-08-14 10:30:27 1730

转载 Linux命令之chown命令

一、命令简介Linux chown(英文全拼:change owner)命令用于设置文件所有者和文件关联组的命令,chown 需要超级用户 root 的权限才能执行此命令。chown更改每个给定文件的用户和/或组所有权。如果只提供了所有者(用户名或数字用户ID),则该用户将成为每个给定文件的所有者,并且不会更改文件组。如果所有者后跟冒号和组名(或数字组ID),且两者之间没有空格,则文件的组所有权也会更改。如果用户名后面有冒号,但没有组名,则该用户将成为文件的所有者,并且文件组将更改为该用户的登录组。...

2022-08-10 17:11:18 9377

转载 chmod命令原理及用法详解(转)

chmod u+rwx, g+rwx, o+rwx filename 改命令说明对filename文件, 赋予user、group、other均有read、write、excute的权限。赋予group用户read、write权限。数字法:chmod 777 文件名 字母法: chmod u+rwx, g+rwx, o+rwx 文件名。000 无任何权限。...

2022-08-10 16:36:49 6970

转载 linux进程和进程结构内存分布

这部分区域的大小在程序运行前就已经确定,并且内存区域通常属于只读,某些架构也允许代码段为可写,即允许修改程序。BSS段属于静态内存分配。执行程序时,系统首先在内核空间中创建一个进程,为这个进程申请PCB(进程控制块task_struct)用于管理整个进程的所有资源,其中mm_struct成员用来管理与当先进程相关的所有内存资源。对和栈的其实地址默认是随机产生的,其目的是避免安全漏洞,但是可以指定堆中申请的起始地址。1.代码段,数据段,bss段,直接从磁盘拷贝到当前的内存空间,大小相等。...

2022-07-22 11:24:13 417

原创 结构体基本用法和字节对齐

*此处sizeof(数组名)就是数组所占空间的大小,sizeof(structstudent)就是一个结构体的长度,注意记得加struct*/printf("学生%s,成绩%d\n",stu_point2[i]->name,stu_point2[i]->score);4.如果嵌套了结构体,嵌套的结构体对齐到自己最大对齐数的整数倍处,结构体的整体大小就是所有所有最大的对齐数的整数倍(包含嵌套结构体的对齐数)。/*输出的是8个字节*/printf("请输入第%d个学生的成绩\n",i+1);...

2022-07-21 16:16:26 297

转载 iptables命令和防火墙规则的顺序

网络故障排查中,经常要抓包,windows有wireshark,linux最常用的是tcpdump,其中被问得最多的一个问题"iptables限制后,tcpdump还能抓到包吗?显而易见,数据包到达网卡后,tcpdump有能力直接捕获到,不受iptables的影响,此时数据包还没有到达iptables的。链,到达APP后,处理完报文从iptables出去,出去最终要走到。链再到tcpdump,所以此时受到iptables的。...

2022-07-21 16:03:42 895

转载 iptable和tcpdump的先后顺序

tcpdump在Linux系统防火墙规则的外

2022-07-18 16:13:17 577

转载 libevent定时器设置

#include <event.h>struct event ev;struct timeval tv;void time_cb(int fd, short event, void *argc){ printf("timer wakeup\n"); event_add(&ev, &tv); // reschedule timer}int main(){ struct event_base *base = event_init();//初始化e...

2021-11-11 14:29:02 207

转载 Wireshark抓包以及tcpdump抓包

tcpdump抓包命令tcpdump 的抓包保存到文件的命令参数是-w xxx.cap抓eth1的包 tcpdump -i eth1 -w /tmp/xxx.cap 抓 192.168.1.123的包 tcpdump -i eth1 host 192.168.1.123 -w /tmp/xxx.cap 抓192.168.1.123的80端口的包 tcpdump -i eth1 host 192.168.1.123 and port 80 -w /tmp/xxx.cap 抓192.168.

2021-09-01 19:13:15 4582

原创 C语言中static关键字和extern关键字

一.static关键字1.先来介绍它的第一条也是最重要的一条:隐藏。被static修饰的全局变量和函数,仅在当前文件可见。当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们要同时编译两个源文件,一个是a.c,另一个是main.c。下面是a.c的内容char a = 'A'; // global variablevoid msg() { printf("Hello\n"); }下面是main.c的内容i

2021-08-29 19:15:39 481 1

原创 指针,字符,字符串,函数指针,总结

1.整型整型赋值 int a1 = 100;负数赋值 int a2 = -2;指针赋值 int *a3 = &a1; note:这种方式会让人感觉是把a1的地址传给了 *a3,其实是传的值是a3,好一点的写法,int *a3=NULL; a3 =&a1;数组赋值 int a3[5] = {1,2,3,4,5};其中的a3是数组a3的起始地址;printf("a3 = %p",a3)可以打出a3的地址,用*a3可以打出数组a3第一个值a3[0].printf("a3=%p",.

2021-08-25 21:33:18 173

转载 Linux下CMake简明教程

C程序组成:1.可执行文件;2.包含文件(include);3.依赖的库文件(.so / .a)操作系统功能:1.命令解释;2.进程管理;3.内存管理;4.输入/输出和外围设备管理;5.文件管理关机重启指令:shutdown -h now 关机;shutdown -r now 重启。Linux系统结构:硬件->内核->shell->外层应用程序...

2021-08-17 20:44:33 742 2

原创 LINUX系统操作笔记

linux 查看网卡是否有网线连接ethtool eth0[root@test ~]# ethtool eth0Settings for eth0: Current message level: 0x00000007 (7) Link detected: yes(表示插线), No(表示未插线)

2021-08-09 19:20:07 128

原创 MAKEFILE学习使用

1.MAKEFILE概述想要成为专业程序员,mekefile必须懂 !尤其是在Linux下进行软件编译,makefile就不得不自己写。因为,makefile关系到了整个工程的编译规则。一个工程中的源文件不计其数,并且按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为makefile就像一个 Shell脚本一样,其中也可以执行操作系统的命令。...

2021-08-06 15:21:32 331

转载 GCC编译原理

4 链接4.1 链接的基本描述链接是将各种代码和数据片段收集并组合成一个单一文件的过程,该文件可被加载到内存并执行。链接可以执行与编译时,在源代码翻译成机器代码时;也可执行与加载时,也就是在程序被加载器加载到内存并执行时;还可以执行与运行时,也就是由应用程序来执行。链接器在软件开发中扮演一个关键的角色,它们使得分离编译成为可能。我们不用将一个大型的应用程序组织为一个巨大的源文件,而是可以把它分解为更小、更好管理的模块,可以独立的修改和编译这些模块。当我们改变这些模块中的一个时,只需简单的重新编译它,并重新

2021-08-05 19:32:46 932

转载 GDB调试技巧

gdb (运行程序):gdb lt-snmpd

2021-08-04 17:57:04 2017

转载 (转)深度好文:Linux系统内存知识详解

Linux 内存是后台开发人员,需要深入了解的计算机资源。合理的使用内存,有助于提升机器的性能和稳定性。本文主要介绍Linux 内存组织结构和页面布局,内存碎片产生原因和优化算法,Linux 内核几种内存管理的方法,内存使用场景以及内存使用的那些坑。从内存的原理和结构,到内存的算法优化,再到使用场景,去探寻内存管理的机制和奥秘。走进Linux 内存1、内存是什么?1) 内存又称主存,是 CPU 能直接寻址的存储空间,由半导体器件制成2) 内存的特点是存取速率快2、内存的作用

2021-08-04 16:33:14 1112

转载 Java的Integer和int有什么区别(转)

Java是面向对象的编程语言,一切都是对象,但是为了编程的方便还是引入了基本数据类型,为了能够将这些基本数据类型当成对象操作,Java为每一个基本数据类型都引入了对应的包装类型(wrapper class),int的包装类就是Integer,从Java 5开始引入了自动装箱/拆箱机制,使得二者可以相互转换,对应如下:原始类型:boolean,char,byte,short,int,long,f...

2018-09-09 22:08:08 2439

转载 协议号与端口号详解

IP是网络层协议,IP头中的协议号用来说明IP报文中承载的是哪种协议(一般是传输层协议,比如6 TCP,17 UDP;但也可能是网络层协议,比如1 ICMP;也可能是应用层协议,比如89 OSPF)。TCP/UDP是传输层协议,TCP/UDP的端口号用来说明是哪种上层应用,比如TCP 80代表WWW,TCP 23代表Telnet,UDP 69代表TFTP。目的主机收到IP包后,根据IP协议号确...

2018-09-03 10:13:28 6567

转载 三次握手(Three-way Handshake)和四次挥手

相对于SOCKET开发者,TCP创建过程和链接折除过程是由TCP/IP协议栈自动创建的.因此开发者并不需要控制这个过程.但是对于理解TCP底层运作机制,相当有帮助.而且对于有网络协议工程师之类笔试,几乎是必考的内容.企业对这个问题热情之高,出乎我的意料:-)。有时上午面试前强调这个问题,并重复讲一次,下午几乎每一个人都被问到这个问题。因此在这里详细解释一下这两个过程。TCP三次握手...

2018-09-03 09:52:33 2243

原创 KMP(看毛片算法)Next数组的求法

博住看大话数据结构里的Next数组求法,看的云里雾里。看了大量帖子,然后根据网上帖子,以大话数据结构的思路,总结出Next数组的求法。如有错误请指正。先明确什么是部分匹配值?"部分匹配值"就是"前缀"和"后缀"的最长的共有元素的长度。以"ABCDABD"为例,  - "A"的前缀和后缀都为空集,共有元素的长度为0;  - "AB"的前缀为[A],后缀为[B],共有元素

2018-07-24 20:29:01 1692

转载 Java集合类: Set、List、Map、Queue使用场景梳理

Java集合类: Set、List、Map、Queue使用场景梳理本文主要关注Java编程中涉及到的各种集合类,以及它们的使用场景 相关学习资料http://files.cnblogs.com/LittleHann/java%E9%9B%86%E5%90%88%E6%8E%92%E5%BA%8F%E5%8F%8Ajava%E9%9B%86%E5%90%88%E7%B1%BB%E8...

2018-07-17 22:12:50 299

转载 Java数据顺序存储结构于单链表的效率分析

顺序存储结构的效率分析  通过上述的分析,我们对顺序表的实现已有了比较清晰的认识,接下来看一下顺序表的执行效率问题,主要针对获取、插入、修改、删除等主要操作。前面分析过,由于顺序表内部采用了数组作为存储容器,而数组又是随机存取结构的容器,也就是说在创建数组时操作系统给数组分配的是一块连续的内存空间,数组中每个存储单元的地址都是连续的,所以在知道数组基地址后可以通过一个简单的乘法和加法运算即可计...

2018-07-17 19:59:42 605

转载 java Comparable 和Comparator详解及 区别(附代码)(转)

java中,对集合对象或者数组对象排序,有两种实现方式。即:(1)对象实现Comparable 接口        (2)定义比较器,实现Comparator接口。下面会简要介绍这两种方法的区别,并附上实现代码,供大家参考。 Comparable介绍Comparable是在集合内部定义的方法实现的排序,位于java.lang下。Comparable 接口仅仅只包括一个函...

2018-07-16 20:49:07 282

转载 Java泛型的本质

一、泛型的本质泛型是参数化类型的应用,操作的数据类型不限定于特定类型,可以根据实际需要设置不同的数据类型,以实现代码复用。二、Java泛型Java 泛型是Java1.5新增的特性,JVM并不支持。实现原理:Java源代码里面类型提供实现泛型功能,而编译后Class文件类型就变成原生类型(即类型被擦除掉),而在引用处插入强制类型转换以实现JVM对泛型的支持。本质是Java泛型只是Java提供的一个语...

2018-07-13 10:16:53 1739

转载 Java堆内存设置

堆内存设置原理JVM堆内存分为2块:永久空间和堆空间。永久即持久代(Permanent Generation),主要存放的是Java类定义信息,与垃圾收集器要收集的Java对象关系不大。Heap = {Old + NEW = {Eden,from,to}},Old即年老代(Old Generation),New即年轻代(Young Generation)。年老代和年轻代的划分对垃圾收集影响比较大。...

2018-07-12 22:41:24 13695 1

转载 Java虚拟机详解02----JVM内存结构

主要内容如下:JVM启动流程JVM基本结构内存模型编译和解释运行的概念 一,JVM启动流程:JVM启动时,是由Java的命令/ javaw进程命令来启动的。二,JVM基本结构:JVM基本结构图:“深入理解的Java虚拟机(第二版)”中的描述是下面这个样子的: 的Java中的内存分配:Java的程序在运行时,需要在内存中的分配空间。为了提高运算效率,就对数据进行了不同空间的划分,因为每一片区域都有特...

2018-07-11 23:02:08 208

转载 深入理解java反射机制

一,java的核心机制java有两种核心机制:java虚拟机(JavaVirtual Machine)与垃圾收集机制(Garbage collection): Java虚拟机:是运行所有Java程序的抽象计算机,是Java语言的运行环境,在其上面运行Java代码编译后的字节码程序,java虚拟机实现了平台无关性。 Java垃圾回收(Garbage Collection):自动释放不...

2018-07-11 15:49:33 160

转载 【剑指offer】Java版代码(完整版)

一,引言“剑指提供”可谓是程序猿面试的神书了,在面试中帮了我很多,大部分面试的算法题都会遇到原题或者是类似的题。但是书上的代码都是Ç版的,我在这里整理了一份的Java版的代码供大家学习参考,这些代码我都是在OJ上跑过全交流的,所以正确性你大可放心。二,目录赋值运算函数单例设计模式二维数组中查找目标值替换字符串中的空格从尾到头打印链表由前序和中序遍历重建二叉树用两个栈实现队列求旋转数组的最小数字斐波...

2018-07-05 11:18:21 2346

原创 动态代理案例代码注解

import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;//动态代理的使用,体会反射是动态语言的关键interface Subject { void action(); int action1();}// 被代理类class RealSubje...

2018-07-04 20:33:38 250

转载 Java不可变类机制

不可变类(不可变类):所谓的不可变类是指这个类的实例一旦创建完成后,能改变就不其成员变量值如。 JDK 内部自带的很多不可变类:基于整数,龙和字符串等。可变类( Mutable Class ):相对于不可变类,可变类创建实例后可以改变其成员变量值,开发中创建的大部分类都属于可变类。不可变类的特性对 JAVA 来说带来怎样的好处?1 )线程安全:不可变对象是线程安全的,在线程之间可以相互共享,不需要...

2018-07-02 15:09:17 677

转载 Java5、6、7、8、9的新特性

Java5中Java5中是很重要的一个版本,有泛型,枚举,自动装箱/拆箱,可变参数,注解,的foreach循环,静态导入,新的线程模型等等更新。具体参考  Java5的的新特性的Java6鸡肋的版本,有JDBC4.0更新,Complier API,WebSevice支持的加强等更新。Java6  的新特性Java7java7有一些比较重要的更新,如异常处理增加了被抑制的异常,捕获多异常,尝试与-资...

2018-06-28 19:40:49 559

转载 详细介绍序列化

如果你只知道实现 Serializable 接口的对象,可以序列化为本地文件。那你最好再阅读该篇文章,文章对序列化进行了更深一步的讨论,用实际的例子代码讲述了序列化的高级认识,包括父类序列化的问题、静态变量问题、transient 关键字的影响、序列化 ID 问题。在笔者实际开发过程中,就多次遇到序列化的问题,在该文章中也会与读者分享。引言  将Java对象序列化为二进制文件的 Java 序列化技...

2018-06-26 19:26:25 283

转载 java中finally语句块的深度解析(try catch finally的执行顺序)

1、除了以下2种情况外,不管有木有出现异常,finally块中代码都会执行;①程序未进入try{}块的执行,如在try之前出现运行时异常,程序终止。②程序进入到try{}和catch{}块的执行,但是在try{}或者catch{}块碰到了System.exit(0)语句,jvm直接退出。finally{}块不会执行2、当try和catch中有return时,finally仍然会执行;3、final...

2018-06-25 22:42:21 738

转载 finally语句块选择题

有关finally语句块说法正确的是( )正确答案: A B C D   你的答案: A C D (错误)不管catch是否捕获异常,finally语句块都是要被执行的在try语句块或catch语句块中执行到System.exit(0)直接退出程序finally块中的return语句会覆盖try块中的return返回finally 语句块在 catch语句块中的return语句之前执行1、不管有木...

2018-06-25 22:24:39 2074

转载 为什么this super不能用在static方法中??

为什么this super不能用在static方法中??2016年07月28日 20:54:29阅读数:2499[java] view plain copyclass Fu  {      int a;  }  class Zi extends Fu  {      int b;      static void test(){          this.b;          super.a;...

2018-06-25 22:20:45 1630

转载 java 泛型详解

泛型之前在面向对象编程语言中,多态算是一种泛化机制。例如,你可以将方法的参数类型设置为基类,那么该方法就可以接受从这个基类中导出的任何类作为参数,这样的方法将会更具有通用性。此外,如果将方法参数声明为接口,将会更加灵活。在Java增加泛型类型之前,通用程序的设计就是利用继承实现的,例如,ArrayList类只维护一个Object引用的数组,Object为所有类基类。[java] view plai...

2018-06-24 14:50:08 209

转载 原 深入java 定义正则表达式

本文分为3大部分正则表达式的通用定义规则正则表达式定义的例子附加常用的匹配例子正则表达式的通用定义规则使用正则表达式我们只要关心一个类即可:java.util.regex.Pattern 摘抄自官方API文档。 指定为字符串的正则表达式必须首先被编译为此类的实例。然后,可将得到的模式用于创建 Matcher 对象,依照正则表达式,该对象可以与任意字符序列匹配。执行匹配所涉及的所有状态都驻留在匹配器...

2018-06-23 16:16:29 307

转载 java中Object... 的用法是什么意思?

@SuppressWarnings("unchecked")      public List&lt;T&gt; findByConditions(String hql,Object... conditions) throws Exception{          Session session = getSessionFactory().getCurrentSession();        ...

2018-06-23 15:56:04 27202

向日葵软件,官方直接安装版,附带安装使用教程

向日葵软件,官方直接安装版,不是那种要下载金山毒霸的,百度上找的都是要下载金山毒霸的,太不纯净了。这个软件就是直接安装,附带安装使用教程

2021-06-30

GlobalTourism.zip

Java信息发布网站项目,包括图上传,新闻稿上传,旅游咨询,酒店预订等模块。适合学习者一起学习采用了spring+springmv+mybatis技术,采用了maven进行项目管理。要不是缺分,我才不会上传。

2019-08-28

2019年华为网络技术大赛笔记

2019年华为网络技术大赛笔记,将公开课的资料进行了整理,全是重点,适合初赛,知识点百分之70都有覆盖,网络技术比赛的题越来越难,19年比18年难得多,所以要提前搜集资料做好准备、

2019-08-28

C语言编程代码合集适合初学者

C语言编程代码合集适合初学者,一共几百个案例,标准注释,从基本的语法到函数的调用再到数据结构都有

2019-08-28

2016华为网络技术精英大赛-复赛学习资料

2016华为网络技术精英大赛-复赛学习资料,大家可以对比每年的题目,感受一下比赛试题的类型和风格

2019-03-12

华为网络技术大赛2018年初赛笔记

华为网络技术大赛2018年初赛笔记,每年都部分题目是固定的类型题,只有部分题目是契合没年的主题。

2019-03-12

opnet仿真软件学习资料共11本

该文件为opnet仿真软件学习资料。一共11本,可用于采用openet作为本科毕业设计的同学,研究生深入学习opnet仿真的同学。

2019-01-17

endnote软件

endnote软件破解版,安装方便。EndNote 是SCI(Thomson Scientific 公司)的官方软件,支持国际期刊的参考文献格式有3776 种,写作模板几百种,涵盖各个领域的杂志。您可以方便地使用这些格式和模板,如果您准备写SCI 稿件,更有必要采用此软件。 ⑵EndNote 能直接连接上千个数据库,并提供通用的检索方式,为您提高了科技文献的检索效率。

2018-05-21

华为2018网络技术大赛初赛全部资料

网络技术大赛详细资料 网络技术大赛详细 料 网络技术大赛详细资料

2018-05-13

算法导论自用版

算法导论,算法导论,算法导论,算法导论,算法导论,算法导论

2018-05-09

华为网络技术大赛2018真题以及资料

华为网络技术大赛2018真题以及资料,华为网络技术大赛2018真题以及资料,华为网络技术大赛2018真题以及资料,华为网络技术大赛2018真题以及资料,华为网络技术大赛2018真题以及资料,华为网络技术大赛2018真题以及资料,绝对干货。

2018-05-07

vlc-32播放软件

vlc-3.0.2播放软件,值得你拥有,vlc-3.0.2播放软件,值得你拥有vlc-3.0.2播放软件,值得你拥有vlc-3.0.2播放软件,值得你拥有vlc-3.0.2播放软件,值得你拥有vlc-3.0.2播放软件,值得你拥有

2018-04-26

Java核心技术PDF自用版

Java核心技术PDF自用版Java核心技术PDF自用版Java核心技术PDF自用版Java核心技术PDF自用版

2018-01-24

超级终端win7xp版 v7.0官方最新版

超级终端win7xp版 v7.0官方最新版

2017-11-21

pdf解密软件(安全无毒)

PDF解密用的软件,移除加密限制,无需安装,安全无毒,体积小,使用方便

2017-09-28

空空如也

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

TA关注的人

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