- 博客(15)
- 收藏
- 关注
原创 LinuxC--计算字符串中子串数
LinuxC--计算字符串中子串数#include<stdio.h>#include<stdlib.h>#include<string.h>int Count(char* str,char* chdstr){int sum=0;char* first_str=str;while(first_str=strstr(first_str,chdstr)){sum++;first_str=first_str+strlen(chdstr);}return
2020-06-20 12:55:10
355
原创 Linux c 网络编程--中篇
Linux c 网络编程--中篇1.字节顺序与转换函数1.1字节顺序1.2Linux系统提供的转换函数2.获取和设置套接字属性2.1获取套接字属性2.2设置套接字属性1.字节顺序与转换函数1.1字节顺序大端模式:高字节数据存放在低地址,低字节数据存放在高地址。小端模式:低字节数据存放在低地址,高字节数据存放在高地址。数据0x04030201存放如下注意1.对于char类型数据由于只占一个字节,因此不存在大小端的问题2.对于IP地址、端口等非char类型数据,必须在数据发送到网络之前转
2020-06-16 22:29:00
178
原创 Linux C-网络编程--上篇
Linux C-网络编程1.通用套接字2.具体赋值使用的套接字创建套接字建立连接绑定套接字监听套接字接受连接发送和接收数据1.通用套接字#include<linux/socket.h>struct sockaddr{ unsigned short sa_family;//协议族类型2字节,AF_INET(TCP/IP协议) char sa_data[14]; //具体协议地址14字节}一般并不对该通用结构体进行操作,而是使用另一个等价数据结构2.具体赋值使用的套接字stru
2020-06-12 23:33:09
230
原创 计算机网络-运输层-UDP
计算机网络-运输层-UDP用户数据报协议UDPUDP概述1.UDP主要特点2.UDP首部格式3.UDP端口复用4.UDP计算检验和用户数据报协议UDPUDP:User Datagram ProtocolUDP概述1.UDP 只在 IP 的数据报服务之上增加了很少一点的功能,即端口的功能和差错检测的功能。1.UDP主要特点1.UDP是无连接的,减少了开销和发送数据之前的时延。2.不保证可靠交付,即尽最大努力交付,主机不用维持复杂的连接状态表。3.面向报文的,UDP一次交付一个
2020-06-10 23:48:52
235
原创 C进程控制--上篇
C进程控制基础linux进程的结构linux进程状态进程的各种标识符进程的内存映像创建进程子进程继承父进程的内容子进程与父进程的区别孤儿进程fork与vfork基础1.进程是一个动态的实体,是程序的一次执行过程。2.进程是在内存中,程序是在硬盘中。3.进程是操作系统资源分配的基本单位。4.区别进程、线程、程序。5.线程在进程内部,是比进程更小的能独立运行的基本单位。6.线程不拥有系统资源,与其他线程共享进程的全部资源。7.一个线程可撤销另一个线程,同一进程中多个线程并行执行。8.进程树的
2020-06-03 23:53:16
273
原创 shell--循环
shell--循环#列表for这种使用in的格式1比较常用格式1:for 变量 in 列表do 操作变量done#列表为数字或字符串组成,元素空格分隔#举例(可复制并直接执行)for i in 1 2 3 4 5do echo $idonefor i in hello worlddo echo $idone格式2for 变量 in {start..end..step}do 操作变量done注:用范围列出所有元素 使用 .. step 表示步长 默认步
2020-05-24 12:00:33
134
原创 makefile之伪目标
makefile--伪目标常用伪目标clean伪目标不可以与文件名同名伪目标的依赖文件伪目标作为默认目标伪目标的目的不是根据依赖关系生成某个目标,而是为了执行某种任务常用伪目标cleanclean: rm *.o#通过 make clean来使用目标小结:1.因为我们并不是生成clean这个文件,因此"伪目标"并不是一个文件,只是一个标签。2.由于“伪目标”不是文件,所以 make 无法生成它的依赖关系和决定它是否要执行,因此在使用时是通过 “make clean” 这样显示指明
2020-05-20 22:49:34
574
原创 linux---oracle之spool
linux--oracle之spool#! /bin/shsqlplus -s 用户名/密码<<EOF set head off set linesize 20000 set echo off set feedback off set pagesize 0 set termout off set trimout on set trimspool on spool /home/test.txt select empno || '|' || ename || '|' ||
2020-05-16 21:25:37
824
原创 redis之cluster
redis-cluster安装linux准备用户等安装步骤redis版本 redis-5.0.7三主三从(类似的可以多主多从)准备用户等# 创建用户useradd -d /app/redis -m redis设置密码passwd 密码安装步骤1.上传redis到linux下在linux下创建目录/app/redis2.在/app/redis创建目录mkdir binmkdir etcmkdir cluster3.在/app/redis解压安装包tar -zvxf re
2020-05-14 21:22:30
124
原创 postgres--copy的使用
postgres--copy导出单个表到显示器导出单个表到文件中导出单个SQL语句查询结果到文件中导入显示器数据到表中导入单个文件数据到表中注意:copy中的分隔符默认是tab键。导出单个表到显示器导出单个表到文件中导出单个SQL语句查询结果到文件中导入显示器数据到表中导入单个文件数据到表中...
2020-05-14 20:26:58
1063
原创 python闭包与装饰器--下篇
python闭包与装饰器__call__基于类实现的装饰器类装饰器带参数前提:装饰器函数从另一个角度去看其实是一个接口约束,它必须接受一个callable对象作为参数,然后返回一个callable对象。Python中一般callable对象都是函数,但也有例外。只要某个对象重载了__call__()方法,那么这个对象就是callable的callclass Hello(): def __call__(self): print("call me!")if __name
2020-05-11 20:45:08
152
原创 python闭包与装饰器--中篇
python闭包与装饰器最简单装饰器被修饰的函数带参数装饰器带参数类装饰器内置装饰器最简单装饰器被修饰的函数带参数装饰器带参数类装饰器内置装饰器
2020-05-09 21:06:39
267
原创 python闭包与装饰器--上篇
python闭包与装饰器函数有三种形式闭包装饰器函数有三种形式1.定义形式2.对象形式(函数变量)3.调用形式def outer(): str1 = "我是outer函数str1" print(str1) def inner(): str1 = "我是inner函数str1" print(str1) return innerf=outer()f()#结果:#我是outer函数str1#我是inner函数str1函数嵌
2020-05-08 22:56:58
330
原创 5分钟教会你python的random模块
python-random取随机浮点数取整数多选一多选任意洗牌取随机浮点数print(random.random()) # 随机产生一个0-1之间的小数 0 <= n < 1.0print(random.uniform(1, 3))# 随机产生两个数之间的浮点数random.uniform(start,stop)取整数print(random.randint(1, 3)...
2020-05-07 23:20:39
140
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人