Glory to the MANKIND!

Thinking will not overcome fear but action will.

boost spirit 学习

编译原理初探

boost 语法解析器学习 主要参考 EBNF学习 EBNF基本形式 ​ ** ** 分隔符,表示由它分隔的某一个子表达式都可供选择 ​ **** 重复,和正则表达式里的类似,表示它之前的子表达式可重复多次 ​ - 排除,不允许出现跟在它后面的那个子表达式 ​ , 串接,...

C++的一个小疑问

别名重定义

C++ 的一个小疑问 来源 出自c++ primer ex7.35 typedef string Type; Type initVal(); class Exercise { public: typedef double Type; Type setVal(Type); Type initVal(); private: int val; }; Ty...

内存管理内幕0x02 fastbin

这不硬核..

内存管理内幕(2) –fastbin 已经好久都没有更新博客了,今天准备写一篇关于malloc的学习笔记 前言 上篇文章中, 详细介绍了malloc的基本实现。但是在glibc malloc中,我们用的是一种完全不一样的策略来完成chunk的管理。 图片来源 基础知识 bin介绍 bin是一种记录free chunk的链表 其中有四种不同的类型 1.Fast ...

内存管理内幕

这算硬核了吧.....

内存管理内幕 内存管理是计算机编程最为基本的领域之一。在很多脚本语言中,您不必担心内存是如何管理的,这并不能使得内存管理的重要性有一点点降低。对实际编程来说,理解您的内存管理器的能力与 局限性至关重要。在大部分系统语言中,比如 C 和 C++,您必须进行内存管理。 –IBM Dveloper 从malloc谈起 在c语言库里,中有一个管理内存的函数, malloc:该函数分配给定的字...

进击的树莓派

一次无聊的尝试

进击的树莓派(一) 近日想解决一下iPad上写c的问题,奈何网上的在线IDE不好用,一直开着笔记本共享也不行,于是购入了一个树莓派来作为小型服务器。 系统的安装和设置 我的树莓派 首先我们要在sd卡上烧入系统, 需要用到两个工具 这里使用的是最新的官方源点击我下载 然后用这两个工具,先使用SD Card Formatter格式化U盘,然后使用USB Image T...

指针与数组问题归档

然后就是

我对指针和数组的理解 指针 某社团的上古学长曾经说过C语言中只有两种类型变量,值和指针。起初我还不太理解学长的意思,直到现在我才渐渐有一点明悟。 即是这两种类型 AnyType // 创建一个该类型的变量 AnyType * // 创建一个指针 这个指针指向的值是一个该类型的变量 指针也是变量,它本身也有值,它保存了它所指向地址的值。由此,可以通过指针间接修改变量...

关于代码规范

还有一些个人感想

关于代码规范 这几天做协会的题目,题目可以写完,但是代码不是太规范。以下我自己的一些思考。 谷歌代码规范 谷歌的C++的规范 这个就是在网上找的代码规范了,当然,我自己也有自己的理解。 关于变量命名 命名约定 总体规则:不要随意缩写,除函数名可适当为动词外,其他命名尽量使用清晰易懂的名词; 宏、枚举等使用全部大写+下划线; ...

Hello world!

CNSS招新题目

众所周知 #include<stdio.h> int main(void) { printf("hello world!\n"); return 0; } (当然因为我就知道C语言的)是广大程序员的 第一个几乎是第一个程序。 但是我们真的完全了解他了吗。 -_-|| 并没有 近期水的一个题目的确让我,emmmm 反思了一下自己的学习成果。 这就是CNSS的招新(反正...

Git指令整理

可能不适合阅读的一些个人常用的 Git 指令

随便整理的一些自用的Git指令 GitHub创建仓库提示代码 echo "# 项目名" >> README.md git init git add README.md git commit -m "first commit" git remote add origin git@github.com:qiubaiying/项目名.git git push -u orig...