自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++含有可变形参的函数

有时我们无法提前预知应该向函数传递几个实参,为了编写能处理不同数量实参的函数,C++11新标准提供了两种方法:如果所有实参类型相同,可以传递一个名为initializer_list的标准库类型;如果实参类型不同,我们可以编写一种特殊的函数,也就是所谓的可变参数模板。C++还有一种特殊的形参类型(省略符)可以用它传递可变数量的实参。这种功能一般用于与C函数交互的接口程序。

2024-06-12 11:27:43 272

原创 使用libevent实现事件驱动以替代多线程并发阻塞I/O结构

用多线程来操作同一个event_base,在我的项目的环境中,使用第一版的PPPoE客户端,每个连接大概消耗了7MB的内存,这是不可接受的,想象一个学校6000个拨号,就会占用42G的内存占用,这是非常吓人的,使用了新的基于libevent的模型,不管多少个连接,我都只占用了大概5MB的内存,这是非常可观的,由此可见,在未来的网络编程中,或者多线程阻塞IO中我们都可以改写为使用事件驱动来进行优化。这样做,就没有一直存在的线程了,而是交给epoll来做,大家觉得这样可以吗........当然不行!

2024-04-25 15:37:39 660 1

原创 [Linux系统]部署PPPoE+radius服务器

由于PPPoE热度在00到10年,所以,大部份资料都在这个年限中,但是PPPoE和PPPD进行了数个版本的迭代发生了一些变化,包括freeradius的文件夹结构等等,都有一些细微改变,笔者也是一点一点查资料,找了很久才部署成功,如果大家在部署过程中有什么问题,建议去外网搜索,内网资料实在屈指可数,由于年限,找到了也不太能用,希望大家部署顺利。笔者也是小白,有什么问题大家可以评论一起讨论!

2024-02-26 10:45:58 1416 1

原创 ubuntu配置freeradius与mysql进行认证服务

想要在自己的ubuntu上部署一个搭配mysql的radius服务器,在网上找了很久资料,可能比较原始,网上的资料大都为零几年的,那个时候的freeradius配置和现在很不一样,找了很久资料才配好,好不容易配好了,给大家参考一下..如果还有什么问题可以问我,我也在学习。

2024-02-19 16:27:59 371 1

原创 (贪吃蛇)Linux C基于VT码实现的贪吃蛇小游戏

因为学习C许久,但是一直没有做过贪吃蛇,觉得不太行,因此花了点时间用LinuxC写了一个贪吃蛇的小游戏。大致思路是链表节点对应蛇的节点,头节点按方向移动(方向由另一个线程来获取用户输入),身体按频率向后一个节点传递坐标,然后一帧一帧刷新屏幕,绘制使用VT码来实现绘制,因为VT码只能绘制字符,因此蛇的节点不是正方形的,而是长宽2:1的长方形,如果大家想绘制一个节点为正方形的可以使用frame buffer驱动,这里本人不对此扩展(因为只写了VT的)。因为代码粘贴进csdn可能会有差别,所以细节差别还望大

2024-01-24 11:54:47 491 1

原创 解决点烟器车载mp3歌曲播放按人名顺序问题

因为老爸的车淘汰给本人了,本人开车有听歌需求,而车又比较老,没有蓝牙功能,因此本人使用点烟器外接usb实现听歌功能。点烟器中播放歌曲是按照字母顺序播放,因此每次听歌的时候会造成一直播放一个人的歌的情况(因为曲名常以人名开头),非常影响体验,因此诞生了这个脚本,原理是把所有文件名改成随机数,点烟器读取歌曲就会按照数字顺序来播放了,而每个歌曲的名字都是不重复的随机数,从而可以实现随机播放功能。

2024-01-23 15:39:31 484 2

原创 双链表相关操作

双链表:基本操作、选择排序、倒序

2023-09-07 14:56:46 31 1

原创 单链表相应操作

链表的相关操作,小白一只,望大佬指正

2023-09-05 10:24:38 50 2

空空如也

空空如也

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

TA关注的人

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