关于 C 指针的一些疑惑与探索

某天突然想了个关于结构体的问题,由于很久没有接触 C 语言,一开始并不知道其实这个问题本身就存在语法错误的问题,但正是因为对 C 知识的遗忘,才有了这次探索与巩固。

0x00 最初的问题

假设有如下结构体:

struct foo
{
    /* some other variables...*/
    struct foo bar;
};

那么我在定义一个 foo 变量的时候,

int main()
{
    struct foo hello;
    return 0;
}

会不会因为结构体里有一个循环引用而造成“内存爆炸”呢?

- 阅读剩余部分 -

OpenWrt 定期检测进程是否存在并重启

校园网的拨号客户端用的是师兄写的 c3h,周日至四每天晚上十二点断网之后程序会进行一次重连,但是交换机会无响应,然后程序就会退出(写成不退出也不是不行,只是大半夜的你没事往交换机那边一直发起认证请求是件很奇怪的事情啊),等到了第二天早上七点程序就需要重新启动。之前用的方法是设置个定时任务,每天早上7:10 reboot 一下路由器,但是这样软重启会造成极路由 1S 重启之后总内存只能识别到 20MB 左右(而断电重启是能正确识别到 128MB 的内存的),这样无线就很容易崩,因此现在写了个 shell 脚本,用来代替之前的 reboot,定期每天早上检测一下 c3h 挂掉没有,如果没有挂掉了就重新启动一个。

- 阅读剩余部分 -

Biu - 让你的邀请链接更好记

朋友经常会问我博客是用的哪的服务器,VPS 买的是哪家的,这时候我当然会发邀请链接啦(你好我好大家好嘛),可是邀请链接一般都很长而且没有什么规律,很难记,所以就写了这么一个东西,Biu,用来帮我缩短(某种意义上)和语义化我的邀请链接。

例如我的 DigitalOcean 邀请链接是 https://www.digitalocean.com/?refcode=b6df1e984dce ,用了 biu 之后就可以把它变成 https://yian.me/biu/digitalocean ,这样我随时都可以写出我的邀请链接了。

- 阅读剩余部分 -