- 博客(15)
- 资源 (7)
- 收藏
- 关注
原创 C的预处理器
#define我们利用了相邻的字符串被自动连接成一个字符串这个特性不要在宏定义的末尾加上分号是一个良好的coding习惯,因为这个有些时候会带来一些问题,如:若在宏定义末尾加上分号,显然 if 后面会被预处理成两条语句:printf 语句 和 一条空语句; 这显然会带来问题宏我们来看几个 宏定义 的例子,来
2013-08-27 10:43:16 721
原创 C使用 stdarg 宏来实现函数的可变参数列表
写贴一个代码实例,然后再进行讲解:#include #include float average(int n_values, ...) { va_list var_arg; int count; float sum = 0; va_start(var_arg, n_values); for (count = 0; count < n_values; cou
2013-08-24 09:48:50 1344
原创 实例解析递归
下面黄颜色的标注是个人认为的一些对递归理解非常经典的一些话代码实例#include void binary_to_ascii(unsigned int value) { unsigned int quotient; quotient = value / 10; if (quotient != 0) { binary_to_ascii(quotie
2013-08-23 16:03:36 1069
原创 C操作符和表达式
移位操作左移算术左移、逻辑左移无区别,都是丢弃左高位,右低位补0右移逻辑右移丢弃右低位,左高位用 0 填充算术右移丢弃右低位,左高位用 0 还是 1 填充由原先该值的符号位决定:符号位为 1 则填充的全为 1;符号为为 0 则填充的全为 0;位操作与 &或
2013-08-23 09:46:27 1138
原创 C作用域、链接属性、存储类型和初始化
作用域文件作用域任何在所有代码块之外声明的标识符都具有文件作用域,它表示这些标识符从他们的声明之处起直至该源文件的结尾都是可以被访问的函数作用域代码块作用域位于一对花括号之间的所有语句称为一个代码块原型作用域链接属性externalinternal属于 int
2013-08-22 16:34:59 1695 1
原创 C指针常量和常量指针
int *pi声明 pi 为一个指向整型变量的指针int const *pi则声明 pi 为一个指向整型常量的指针由于其为指向整型常量的指针,因此其指向的值不允许被修改,但是你可以修改指针的值int * const pi这样则声明 pi 为一个指向整型变量的常量指针由于其为指向整型变量的常量指针,因此其指向的整型变量值可以被修改,但是不允许修改指针的值int c
2013-08-22 08:50:32 994
原创 c和c++函数参数为void / void *
1. void test(){}2. void test(void){}3. void test(void *){}1和2是相同的,表示test函数不接受任何参数,无论在c还是c++中如果函数不接受参数用2的方式书写是一种良好的习惯3表示test函数接受一个指针类型的参数,无论是什么指针,只要是指针就可以传入
2013-08-20 08:55:12 10431
原创 Linux下GDB调试的学习 | 命令汇总
1.gdb executable filename启动调试2.[break | tbreak] [line_number | filename:line_number]都是设置断点,不同的是 break 设置的断点需要手动删除,但是 tbreak 设置的断点 hit 一次后就自己消失了3.
2013-08-15 16:13:02 987
转载 解决ntp的错误 no server suitable for synchronization found
图片截取自:http://www.blogjava.net/spray/archive/2008/07/10/213964.html
2013-08-05 09:17:51 3036
使用 DoxygenToolkit.vim 由注释生成文档,并且能够快速生成函数标准注释
2014-05-16
UnlimitedJCEPolicyJDK7包
2013-10-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人