- 博客(20)
- 收藏
- 关注
原创 VM+Ubuntu16.04硬盘扩容
注意事项:如果虚拟机之前有保存系统快照,要先删除才能修改,扩容之后可以重新保存。注:这里只能扩大,不能缩小,如果不确定自己一次就能调试成功,可以慢慢加。或者在VM界面下找到介质–>盘片,滑动修改。VM在Windows环境下,终端管理员。
2024-09-20 10:48:06
423
原创 C++项目报错汇总
如果基类里有虚函数,然后定义了基类指针指向派生类,就需要定义基类的虚析构函数,这样,基类指针析构的时候,就会首先析构派生类,再析构基类。
2024-08-27 17:01:06
1197
原创 Makefile学习笔记
作用是,如果同级文件下有clean的同名文件,而makefile里的clean命令又没有依赖,如果此时执行make clean,就不会正常执行clean命令,那么就需要加上这个伪目标,写在原先的clean后即可。另外在makefile中如果想测试取到的是否是自己想要的文件,可以用echo命令,注意,一个makefile里只能有一个all。基本原则:若想生成目标,检查规则中的依赖条件是否存在,如不存在,则寻找是否有规则用来生成该依赖文件。1.目标的时间必须晚于依赖条件的时间,否则,更新目标。
2024-08-27 16:19:41
324
原创 【剑指offer】
③ 有符号上溢:有符号正数 0x7fffffff 加 1 变成 0x80000000, 即从 2147483647 变成了-2147483648。④ 有符号下溢:有符号负数 0x80000000 减去 1 变成 0x7fffffff,即从-2147483648 变成了 2147483647。这里提供了满足LeedCode上要求的代码,其实还有合法非法,以及溢出问题没有考虑到。② 无符号下溢:无符号数 0 减去 1 会变成 0xffffffff,即-1。下面是用C++实现的代码,
2024-07-30 17:40:46
498
原创 【计算机网络】TCP和UDP的封装以及案例
从上述的操作可以看出,TCP和UDP存在很多重复代码,如何后续需要搭建服务器,那么我们可以将重复的部分封装成一个共享库,方便后续调用实现。:地址结构体的字节数,用于区分 sockaddr_un还是sockaddr_in。功能:把字符串格式的点分十进制表示的ip地址转换成整数形式的ip地址(大端)功能:把整数形式的ip地址转换成字符串格式的点分十进制表示的ip地址。1、既告诉函数当前src_addr结构体的字节数。:既是输入,也是输出 这里要取地址!功能:TCP协议通信时专用的数据发送函数。
2024-07-26 17:36:22
1013
原创 【计算机网络】网络抓包
3.查看本机arp缓存表里是否有下一跳地址192.168.0.1的Mac地址,如果有就直接封装帧,如果没有,就发arp广播获得192.168.0.1的Mac地址。4.查看本机arp缓存表里面是否有下一跳地址的mac地址,如果有就直接封装,如果没有就发arp广播获得下一跳地址的mac地址。2.查看本机的路由表,是否有到达这个网段的路由,如果没有就走默认路由,下一跳地址为:192.168.0.1。3.然后到自己的电脑里的路由表里查询是否有到这个网段的路由,如果没有就走默认路由,会有下一跳地址。
2024-07-19 12:03:11
677
原创 【Linux+C】线程间竞争
多个进程或者线程之间互相等待对方手中的资源,在得到新的资源之间不会主动释放自己手中的资源,这样如果形成了等待环路,称之为死锁现象。注意:以上四个条件同时成立,就会形成死锁,死锁一旦产生基本无解,以现在的操作系统是无法解决死锁,因此只能防止死锁的产生。3、右击此电脑->属性->高级系统设置->高级->环境变量->Path->编辑->新建->粘贴路径->确定。与XSI中的信号量原理相同,相当于线程之前使用的同一个计数器,用于统计、控制访问有限的共享资源的线程数量。
2024-07-17 12:28:13
967
原创 【多线程】线程管理
注意:从表面上看当主线程结束后,子线程会跟着一起结束,就会误以为主线程的结束影响了子线程的结束,但是实际上子线程之所以结束是因为主线程执行了main函数中隐藏的return语句,导致了整个进程结束,所以进程中所有的线程才会随之结束。1、线程是进程的执行路线,它是进程内部的控制序列,或者说线程是进程的一部分(进程是一个资源单位,线程是执行单位,线程是进程的一部分,负责真正的执行)7、线程有不同的状态、属性,系统提供了线程的控制接口,例如:创建、销毁、控制。3、如果所在的进程结束,所有的线程都随之结束。
2024-07-17 09:36:14
775
原创 【网络】桥接网卡出问题 UP BROADCAST RUNNING MULTICAST
要用install下载的时候,要断开桥接,不然接不上ubuntu的服务器,但是用ssh又必须要开桥接,有点点烦。或者点连接这里把两个网络断开重连一下(这里我是开了两个网卡)解决办法是重启网络服务。
2024-07-16 13:50:05
381
原创 【MIT6.S081/6.828】搭建开发环境
另外有一点,在所有需要install操作的时候,开NAT的网卡,连接SSH的时候,用桥接网卡。这个实验需要的环境最好是20的版本,用16的版本一直定位不到。所以需要在VirtualBox上重新安装一个20.04的版本。安装完成后,测试版本,比预期的要低一点,但是暂时不影响运行。查看自己的ubuntu版本。
2024-07-08 17:01:00
343
原创 【数据结构】顺序栈 表达式求值 ---C语言实现
设计一个模拟计算器的程序,要求能对包含加、减、乘、除、括号运算符及sqrt和abs函数的任意整数型表达式进行求解
2024-05-29 09:38:44
412
1
原创 【数据结构】四种查找 ---C语言实现
数据分析法:分析数据的特点来设计哈希函数,常用的方法是找到最大值和最小值,用 最大值-最小值+1 确定哈希表的长度,使用 数据-最小值 作为哈希表的下标访问哈希表。 但是该算法有很大的局限性,不适合负数、浮点型数据、字符型数据的查找,还需要额外申请存储空间,空间复杂度高,是一种典型的以空间换时间的算法。 是一种数据处理的思想,不是一种特定的算法,当数据量非常多时,可以先把数据进行分块处理,然后再根据分块的条件进行查找,例如英文字典。
2024-05-22 13:53:24
560
原创 【静态网页】小米官网实现-12页
总共包括12个页面:登录页面 login.html注册页面 zhuce.html小米官网 xiaomi.html小米商城 index.html所有产品-手机 mishop1.html所有产品-手机 mishop2.html手机产品1 miproduct1.html手机产品2 miproduct.html加入购物车 cart.html购物车 mycar
2024-03-17 23:16:16
2743
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人