
C语言
文章平均质量分 87
wenhui_
兴趣广泛
展开
-
一个用来统计c语言关键字出现次数的程序
1 #include 2 #include 3 #include 4 5 //#define DEBUG 6 #ifdef DEBUG 7 #define p(x) printf("%d\n",x) 8 #else 9 #defin原创 2011-10-02 22:59:59 · 6440 阅读 · 0 评论 -
分享一个用递归实现的 strlen函数
#include//还有个条件就是不能用变量int strlen_recursive(char *array){ if(*array == '\0') { return 0; }else{ return strlen_recursive(++array) + 1; }}int main(int argc, char *原创 2011-11-30 21:50:53 · 3788 阅读 · 0 评论 -
数组逆序
#include#define SIZEOF (sizeof(array)/sizeof(int)) int print(int *array, int n){ int i; for(i = 0; i < n; i++) { printf("%d ", array[i]); } putchar('\n');原创 2011-11-28 20:42:09 · 1695 阅读 · 0 评论 -
不同方式实现的strcpy函数 使用时间对比
#include#define GLIBC_STRCPY//#define MY_STRCPY2//#define MY_STRCPY3//#define MY_STRCPY4/*没有考虑 dest src 指向同一内存地址 的情况*/char *my_strcpy1(char *dest, const char *src){ char *d = dest;原创 2011-12-02 19:21:32 · 2356 阅读 · 0 评论 -
负数-补码
今天看网络小说热血传奇之路,提到游戏里的沙巴克刷钱bug,说是当沙城的钱负到21亿的时候会开始变正。虽然传奇玩的较晚,时间也不长也不深入,不知道这事,但是小说作者作为传奇的骨灰级玩家,提到的这事让我很感兴趣,就从21亿这个数来看,这事肯定是真的了。显然这21亿就是int的最大值2147483647了,而且涉及到负数的问题,想起以前关于负数补码的知识看过但没通透,今天把它弄明白。看了些补码的知识转载 2011-12-14 22:44:29 · 24489 阅读 · 10 评论 -
冒泡法排序
//方法一#includevoid print(int *a, int n);void tmp(int *a, int *b){ int t; t = *a; *a = *b; *b = t;}void cmp(int *a, int *b){ if(*a > *b) { tmp(a, b原创 2011-11-28 15:53:40 · 1641 阅读 · 0 评论 -
一个简单计算器的c程序
1 /*该程序的功能: 每行读取一个数(数前面可能有正负号) 并对他们求和, 每次输完后把这些数的累加总和 打印出来(各种功能以后还会不断地完善)*/ 2 #include 3 #include 4 #define MAXLINE 100 5 double a原创 2011-10-08 12:53:00 · 1281 阅读 · 0 评论 -
inline - noinline
<!--p {margin-bottom:0.21cm}--> noinline关键字用来通知编译器不要内联这个函数。【赛迪网讯】inline属性在使用的时候,要注意以下两点:inline关键字在GCC参考文档中仅有对其使用在函数定转载 2011-10-18 23:45:44 · 8913 阅读 · 0 评论 -
可重入和不可重入
重入一般可以理解为一个函数在同时多次调用,例如操作系统在进程调度过程中,或者单片机、处理器等的中断的时候会发生重入的现象。一般浮点运算都是由专门的硬件来完成,举个例子假设有个硬件寄存器名字叫做FLOAT,用来计算和存放浮点数的中间运算结果假设有这么个函数void fun(){//...这个函数对FLOAT寄存器进行操作}假如第一次执行,有个对浮点数操作运算的结果临时存在FLOAT寄存转载 2011-10-19 21:51:36 · 32643 阅读 · 1 评论 -
const volatile 关键字
const int joy = 101;建立了一个变量joy,它的值固定为101.volatile unsigned int incoming;表明incoming 在程序中的两次出现之间它的值可能会改变const int *ptr = &joy;表明指针ptr的值 不能用来改变joy的值,但是它可以指向另外的一个位置void simple(con原创 2011-11-28 17:06:59 · 2001 阅读 · 0 评论 -
嵌入式C语言笔记03——函数指针,内存陷阱,堆栈
嵌入式C语言笔记03——函数指针,内存陷阱,堆栈http://insswer.iteye.com/blog/1040408嵌入式C语言笔记03——函数指针,内存陷阱,堆栈函数指针1. 函数指针的声明与引用函数指针即指向函数地址的指针。利用该指针可以知道函数在内存中的位置。因此,也可以利用函数指针调用函数。 (*函数指针变量名) 函数的参数列表在C语言中,转载 2011-09-19 22:06:48 · 2604 阅读 · 0 评论