![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
知识总结
文章平均质量分 74
YANG_1605
兢兢业业做事,踏踏实实做人,不忘初心,继续前进
展开
-
Python小项目-------随机生成考试试卷
一、问题概述 假如你是一位地理老师,班上有29个学生,你想测试一下班里的同学对中国所有省份省会城市的掌握情况。为了避免学生出现作弊的情况,你需要设计试卷题目,使得每张试卷的题目和答案都是随机生成的,这样就不会出现作弊的情况。如果是进行手动出题,那么耗费的时间是巨大的,还好,你懂得一些Python,如何使用代码设计来完成这一任务。二、问题梳理你的程序应该做到以下事情:创建29份不同的测试试卷; 为每份试卷创建29个选择题,次序随机生成; 为每个问题提供一个正确答案,三个错...原创 2021-01-12 09:26:05 · 1293 阅读 · 0 评论 -
TCP三次握手、四次挥手详解
TCP协议TCP协议全称: 传输控制协议, 顾名思义, 就是要对传输层协议主要有两个:TCP协议和UDP协议。TCP协议相对于UDP协议的特点是:面向连接的、可靠的、字节流服务。数据的传输进行一定的控制.TCP服务的特点: 使用TCP协议通信的双方必须先建立连接,然后才能开始数据的读写。双方都必须为该连接分配必要的内核资源,以管理连接的状态和连接上数据的传输。TCP...原创 2019-08-02 16:47:31 · 477 阅读 · 0 评论 -
知识总结(static、gcc与g++、静态库与共享库、深浅拷贝)
1.static关键字的作用?(1)定义全局变量时加上static关键字修饰,表明该全局变量为静态全局变量,作用域为当前文件;(2)函数定义或声明时加static 关键字修饰,为静态函数,只能在本文件中被调用;(3)定义局部变量时,用static关键字表示其为静态局部变量,只被初始化一次,之后每次调用函数时,该变量值为上次函数退出时的值。2.gcc与g++的区别?(1)对...原创 2019-07-19 15:40:12 · 1171 阅读 · 2 评论 -
Linux —— fork()与vfork()的区别与联系
fork()与vfork(): 我们在创建一个进程时主要是通过某个已存在的进程来调用fork()或者vfork()函数来实现的,那些已存在的进程是作为系统启动的一部分由内核来创建的。1.fork函数介绍#include<unistd.h>pid_t fork(void);功能:创建子进程正确返回:父进程中返回子进程的pid,子进程返回0.(单调用双返...原创 2019-08-02 20:18:51 · 218 阅读 · 0 评论 -
知识总结(new与malloc的区别、线程与进程的区别)
一、new与malloc的区别new delete是运算符,malloc() free()是函数malloc和free是c/c++标准库函数,new和delete是c++运算符。它们都可以用于申请动态内存和释放内存。函数内声明的变量在栈区,代码段运行结束,栈区内存会自动释放malloc和new申请的内存在堆区,使用完毕需要程序员手动释放它们的区别如下:1.属性new/...原创 2019-07-25 17:26:37 · 279 阅读 · 0 评论 -
浅谈HTTP与HTTPS的区别
很多人存在这样的疑惑就是http与https的区别,其实https是http的安全版,相比http,多了一个secure,这个secure是由SSL提供的。我们先来看HTTP与HTTPS的概念:HTTP:http是超文本传输协议在互联网上应用最为广泛的一种网络协议,所有www文件都必须遵守这个标准,基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)连接。http...原创 2019-08-07 18:48:52 · 313 阅读 · 0 评论 -
浅谈IO复用--(select、poll、epoll)
声明:总结主要参考于《Linux高性能服务器编程》这本书,自己总结些许,与君共勉。I/O多路复用形成原因:如果一个I/O流进来,我们就开启一个进程处理这个I/O流。那么假设现在有一百万个I/O流进来,那我们就需要开启一百万个进程一一对应处理这些I/O流(——这就是传统意义下的多进程并发处理)。思考一下,一百万个进程,你的CPU占有率会多高,这个实现方式及其的不合理。所以人们提出了I/O...原创 2019-08-11 17:10:56 · 181 阅读 · 3 评论 -
Linux学习--gdb调试
一.gdb常用命令二.gdb学习小例:#include <stdio.h>int add_range(int low, int high){ int i, sum; for (i = low; i <= high; i++) sum = sum + i; return sum;}int main(void){ int result[100]...原创 2019-08-11 17:47:55 · 156 阅读 · 0 评论