自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 Linux——数据结构

(4)、散列存储(哈希存储):将数据元素的存储位置与关键码之间建立确定对应关系从而实现 查找的存储方式。在记录的存储位置和它的关键字之间建立一种去特定的对应关系,使得每个关键字key对应一个存储位置;查找时,根据同样的散列函数计算记录的散列地址,并按此散列地址访问记录。二叉树:任意一个节点的子节点个数不能超过2个(树的度为2),且子节点的位置不可更改。查找时,根据确定的对应关系,找到给定的key的映射。(3)、索引存储:通过关键字构建索引表,通过索引表来来找到数据的存储位置。

2024-09-05 20:42:37 736

原创 Linux——网络(6)

input type="image" src="1.jpg" alt="图标" width="48" height="48"passward: <input type="password" name="密码" maxlength="3" placeholder="你猜"><br><input type="image" src="img_submit.gif" alt="图标" width="48" height="48">属性总是以"名称=值对"的形式出现,比如:name="value"。

2024-09-05 09:00:44 1116

原创 Linux——网络(5)

时间相关接口:功能:得到从1970年1月1日0时0分0秒到现在的秒数精度到微妙参数:tv:获取到的秒数/* seconds */ 秒/* microseconds */ 微妙 1s=1000000ustz:关于时区/* minutes west of Greenwich */ 格林威治向西的分钟数/* type of DST correction */ 夏令时修正的类型返回值:成功:0。

2024-09-04 23:27:57 1296

原创 Linux——网络(4)

1).普通文件对数据管理(增删改查)效率低2).数据库对数据管理效率高,使用方便。

2024-08-29 18:55:44 929

原创 Linux——网络(3)

服务器在同一时刻只能响应一个客户端的请求。

2024-08-27 18:56:19 976

原创 Linux——网络(2)

IP:标识网络中的一台主机本质上 32位的整型数据端口号:标识某个进程本质上 16位的整型数据。

2024-08-22 19:13:17 1297

原创 Linux——网络(1)

16位数值(unsigned short ) //0~65535 (65536个数) //标示一个进程。const void *buf, //表示要发送的数据所在的一块空间。int flags, //0 --- 默认。网络层 //tcp/ip 协议 栈 (网络协议栈)htons --- h(host) to n(network) s (short) //16位的数据。htonl --- h(host) to n(network) l (long) //32位的数据。

2024-08-21 20:08:10 1323

原创 Linux——进程(5)

1、必须事先定义自定义函数,必须是如下格式:void fun(int sig) //sig 接收到的信息编号2、在所有的信号中有如下两个特列:10 SIGUSR112 SIGUSR2专门预留给程序员使用的未定义信号。

2024-08-16 19:08:52 1134

原创 Linux——进程(4)

信号量的类型 信号量的变量。

2024-08-15 18:39:33 978

原创 Linux——进程(3)

2.pthread_cleanup_pop(0) //pthread_exit() //退出动作会导致 触发。//父进程 ---file -- 子进程 ---进程间通信。// 通信方便,安全性较差,---线程间的通信(同步/互斥)// ---很多资源的额申请 以及资源的初始化。功能:把一个线程设置成相应的属性参数,attr,属性变量,有init函数初始化他。====》主线程结束任意生成的子线程都会结束。====》不同与进程没有孤儿线程和僵尸线程。====》子线程的结束不会影响主线程的运行。

2024-08-14 19:12:41 1016

原创 Linux——进程(2)

若,fork之后打开文件,父子进程操作同一个文件,但是,因为各自拥有自己的 "文件表 项",所以,各自按照自己的逻辑改变文件。这些函数如果调用成功则加载新的程序从启动代码开始执行,不再返回,如果调用出错则返回-1,所以exec函数只有出错的返回值而没有成功的返回值。2.各自拥有自己的相关的程序的各个段 数据段,所以,各自之间对数据的改变,不会相互 影响。c库函数,会执行io库的清理工作,关闭所有 的流,以及所有打开的文件。

2024-08-13 19:58:44 1018

原创 Linux——进程(1)

标准IO --库函数 --FILE * (fopen)文件IO --系统调用 --fd (open)

2024-08-12 21:51:46 941

原创 Linux——文件(4)

功能:根据用户id到/etc/passwd文件下解析获得结构体信息参数:uid:用户id返回值:成功返回id对应用户的信息失败返回NULL。

2024-08-08 18:46:30 1257

原创 Linux——文件(3)

目录当文件看,只不过操作函数和操作文件函数不一样。

2024-08-07 22:09:40 934

原创 Linux——文件(2)

操作系统为了方便用户使用系统功能而对外提供的一组系统函数。称之为 “系统调用” ,其中有个文件IO(一般都是对设备文件操作,当然也可以对普通文件进行操作)——一个基于Linux内核的没有缓存的IO机制。

2024-08-07 21:55:10 755

原创 Linux——文件(1)

功能:从stream流对象关联的文件中获取size大小字节的文本数据并存储到s对应 的本地内存(栈区数组,堆区内存)功能:从ptr所在本地内存中取出nmemb个大小为size的数据块写入到stream流对应的文 件流对象中。如果从文件的指定位置向后偏移过程中已经超过了文件的当前末尾位置,则会自动以'\0'来填充文件内容,从而形成一种被称为"空洞文件" 的特殊文件。

2024-08-05 20:37:16 806

原创 Linux——shell脚本配置

if [ 条件 ] 或 if test 条件。8| | | )语句。if [ 条件 ]until [ 条件 ]elif [ 条件 ]elif [ 条件 ]shell脚本的本质就是一系列shell命令的集合。while [ 条件 ]

2024-08-03 20:57:37 668

原创 C语言——位运算

(1)位运算符中除~以外,均为二目(元)运算符,即要求两侧各有一个运算量。(2)运算量只能是整型或字符型的数据,不能为实型数据。

2024-08-02 20:35:51 743

原创 C语言——结构体与共用体

例如:struct student (结构体类型名) student1,student2;(两个各为结构体变量名)此形式的定义的一般形式为:struct 结构体名成员表列}变量名表列;其一般形式为:struct成员表列}变量名表列;即不出现结构体名。关于结构体类型,有几点要说明(1)类型与变量是不同的概念,不要混同。只能对变量赋值、存取或运算,而不能对一个类型赋值、存取或运算。在编译时,对类型是不分配空间的,只对变量分配空间。

2024-08-01 19:05:32 1027

原创 C语言——指针

基类型 *指针变量名;下面都是合法的定义:(pointer_3是指向float型变量的指针变量)(pointer_4是指向字符型变量的指针变量)在定义指针变量时要注意两点(1)指针变量前面的“*”表示该变量的类型为指 型变量。(2)在定义指针变量时必须指定基类型。

2024-07-29 19:05:17 1256

原创 C语言——预处理命令

带参数的宏定义不是进行简单的字符串替换,还要进行参数替换。其定义的一般形 式为:#define 宏名(参数表) 字符串字符串中包含在括号中所指定的参数。说明:(1)对带参数的宏的展开只是将语句中的宏名后面括号内的实参字符串代替 #define命令行中的形参。(2)在宏定义时,在宏名与带参数的括号之间不应加空格;否则将空格以后的字符都 作为替代字符串的一部分。带参数的宏定义与函数的不同处:(1)函数调用时,先求出实参表达式的值,然后代入形参。

2024-07-27 21:23:27 724

原创 C语言——函数

定义无参数函数的一般形式为:类型标识符 函数名()声明部分语句部分在定义函数时要用“类型标识符”指定函数值的类型,即函数带回来的值的类型。定义有参函数的一般形式为:类型标识符 函数名(形式参数表列)声明部分语句部分如果在定义函数时不指定函数类型,系统会隐含指定函数类型为int型。对变量而言,声明与定义的关系稍微复杂一些。一种是需要建立存储空间的(如:int a;),另一种是不需要建立存储空间的(如:externa;前者称为“定义性声明。

2024-07-24 20:23:21 1154

原创 C语言——数组

类型说明符 数组名[常量表达式][常量表达式];用来存放字符数据的数组是字符数组。字符数组中的一个元素存放一个字符。例如:char c[10];c[0]='I';c[1]='';c[2]='a';c[3]='m';c[4]='';c[5]='h';c[6]='a';c[7]='p';c[8]='p';c[9]='y';以上定义了c为字符数组,包含10个元素。由于字符型与整型是互相通用的,因此也可以定义一个整型数组,用它存放字符数据,例如:int c[10];

2024-07-22 18:37:06 449

原创 C语言——循环控制

语句标号用标识符表示,它的的定名规则与变量名相同,即由字母、数字和下划线组成,其第一个字符必须为字母或下划线。(1)、与if语句一起构成循环结构。(2)、从循环体中跳转到循环体外,但在C语言中可以用break和continue语句跳出本层循环和结束本次循环。

2024-07-20 18:30:35 593

原创 C语言——选择结构程序设计

C语言提供6种关系运算符:关于优先次序(1)前4种关系运算符(=)的优先级别相同,后2种也相同。前4种高于后2种。(2)关系运算符的优先级低于算术运算符。(3)关系运算符的优先级高于赋值运算符。

2024-07-19 20:31:27 774

原创 C语言——顺序程序设计

1、控制语句。用于完成一定的控制功能。C只有9种控制语句,它们是:①if()else…(条件语句)②for()…(循环语句)③while…(循环语句)④dowhile()(循环语句)⑤continue(结束本次循环语句)⑥break(中止执行switch或循环语句)⑦switch(多分支选择语句)⑧goto(转向语句)⑨return(从函数返回语句)2、函数调用语句。

2024-07-18 19:13:31 1061

原创 C语言——数据类型、运算符与表达式

1)、基本的算术运算符2)、算术表达式和运算符的优先级与结合性用算术运算符和括号将运算对象(也称操作数)连接起来的、符合C语法规则的式子,称为C算术表达式。在表达式求值时,先按运算符的优先级别高低次序执行。3)、强制类型转换运算符可以利用强制类型转换运算符将一个表达式转换成所需类型。其一般形式为:(类型名)(表达式)4)、自增、自减运算符。

2024-07-17 22:04:27 493

原创 C语言——程序的灵魂---算法

沃思公式:数据结构 + 算法 = 程序。(2)、直到(until)型循环结构。(1)、当(while)型循环结构。(1)、对数据的描述。(2)、对操作的描述。3、有零个或多个输入。4、有一个或多个输出。三、结构化程序设计方法。

2024-07-17 18:42:13 242

原创 C语言——概述

6、C语言允许直接访问物理地址,能进行位操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。3、数据类型丰富、具有现代语言的各种数据结构。5、语法限制不太严格,程序设计自由度大。7、生成目标代码质量高,程序执行效率高。1、语言简洁、紧凑、使用方便、灵活。8、用C语言编写的程序可移植性好。4、具有结构化的控制语句。

2024-07-17 18:21:52 224

空空如也

空空如也

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

TA关注的人

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