![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
知识点总结
总结知识点,方便查询,记忆
ZHOUJIforever
投资未来,忠于现实。
展开
-
头文件中的#ifndef/define/endif的作用。
#ifndef __XX_H__#define __XX_H__//声明代码#endif作用:防止头文件重复包含如果没有包含这个头文件,那么就包含这个头文件,如果已经有了,那么就不要包含了#define原创 2021-09-29 15:05:40 · 1063 阅读 · 0 评论 -
使用链表完成简易的学生管理系统
使用链表完成简易的学生管理系统无非就是增删改查用时半天,写了一个简易版#include <stdio.h>#include <string.h>#include <stdlib.h>void show(void);typedef struct student{ int m_id; char m_name[64]; double m_chinese; double m_math; double m_english; s原创 2021-09-06 19:56:25 · 405 阅读 · 1 评论 -
使用C语言,模拟路由器的工作过程
1.路由器完成不同网段之间的通信,下面通过一个代码来具体演示路由器的工作过程总结:这个项目耗时两天半完成,旨在理解原始套接字如何接收数据,发送数据。同时熟练使用sqlite3数据库模拟两个不同网段进行通信,主要是进行ping的时候。1.两个不同的网段再ping的时候,是ping不通的。2.再ping其他网段的时候,首先是发送arp的请求包,然后再发送icmp数据包,arp来获取目的IP的MAC地址,如果能够找到这个mac地址,那么就能够组装到icmp数据包上,从而完成通信。3.当发送icmp数据原创 2021-09-03 19:51:20 · 3058 阅读 · 10 评论 -
获取当前网段的IP、MAC,并对其进行欺骗
获取当前网段的IP、MAC,并对其进行欺骗这里所说的欺骗,指的是ARP应答欺骗:正常情况下:一个软件在不同网段之间传输数据的时候,第一次并不知道这个数据包怎么传输过去,这个时候,就会以广播的形式,发送一个ARP请求包,如果发现了相关的网络IP,则会返回一个ARP的应答包,其他的IP也接收到了这个ARP就会将这个包丢弃。那么ARP应答包里放的是什么呢?其实就返回的最重要的就是一个MAC地址,当获得了这个MAC那么就能往下继续传递数据包。注意并不是每一次发数据包都会发送这个ARP的请求包,只要一次走通之原创 2021-08-27 22:23:48 · 266 阅读 · 0 评论 -
浅析TCP的三次握手与四次挥手
TCP三次握手产生时机:调用connect的时候。第一次握手:客服端调用connect函数,向服务器发送SYN数据连接包,请求连接。第二次握手:服务器通过listen函数监听有没有客服端连接,如果有连接的话,通过accept拿出最先的连接的套接字,此时服务器回复一个ACK,SYN的确认连接包。第三次握手:客户端收到服务器发来的确认包,客服端发送一个确认包。三次握手完毕,连接建立,可以进行通信了。TCP四次挥手产生时机:客服端调用close函数第一次挥手:在客服端调用close函数的时候,客服原创 2021-08-23 19:32:27 · 127 阅读 · 0 评论 -
使用线程完成TCP服务器
使用线程完成TCP服务器tcp特点:有链接,效率低,安全(丢包重传)步骤:创建套接字设置端口复用绑定监听accept取出队列中的第一个客服端创建线程,对每一个客服端同时进行收发消息关闭套接字#include <stdio.h>#include <string.h>#include <sys/socket.h>#include <arpa/inet.h>#include <netinet/in.h>#include原创 2021-08-22 21:12:00 · 189 阅读 · 0 评论 -
UDP协议实现交流通信
UDP协议实现交流通信1.创建套接字2.地址绑定3.循环的接收消息和发送消息4.关闭套接字#include <stdio.h>#include <sys/socket.h>#include <arpa/inet.h>#include <netinet/in.h>#include <unistd.h>#include <string.h>#include <sys/types.h>#include &l原创 2021-08-22 21:00:32 · 116 阅读 · 0 评论 -
UDP协议实现服务器
UDP协议实现服务器UDP协议的特点:无连接,传输的效率高,但是不安全(可能丢包)步骤:创建套接字绑定本机的地址接收数据关闭套接字#include <stdio.h>#include <sys/socket.h>#include <arpa/inet.h>#include <netinet/in.h>int main(int argc,char *argv[]){ //创建套接字 int sockfd=socket(AF_INE原创 2021-08-22 20:51:48 · 193 阅读 · 0 评论 -
使用进程完成TCP服务器
使用进程完成TCP服务器大致步骤为:创建套接字设置端口复用绑定监听返回当前连接套接字接收,发送消息关闭套接字#include <stdio.h>#include <string.h>#include <sys/socket.h>#include <arpa/inet.h>#include <netinet/in.h>#include <sys/types.h>#include <unistd.h&原创 2021-08-22 20:35:05 · 91 阅读 · 0 评论 -
有名管道知识点总结
有名管道知识点总结原创 2021-08-06 22:47:53 · 84 阅读 · 0 评论 -
无名管道知识点总结
这里写自定义目录标题无名管道无名管道希望能够能帮到大家原创 2021-08-06 20:24:17 · 66 阅读 · 0 评论 -
进程知识点框图总结
进程知识点框图总结原创 2021-08-07 15:39:35 · 82 阅读 · 0 评论 -
消息队列知识点总结
消息队列知识点总结原创 2021-08-07 10:22:36 · 80 阅读 · 0 评论