
c语言学习
bailin2010
这个作者很懒,什么都没留下…
展开
-
C语言小程序
/* 斐波拉契数列,求数列的第N个数的值,并求前N个数的和1 1 2 3 5 8 13 21 34*/# include int main(void){int n;int f1,f2,f3;int i;int sum =0;1=1;f2=1;printf("请输入您需要求的项的数:");scanf("%d",&n);if(n==1){ f3=1; sum =1;}else if(n==2){ f3=1; sum=2;}else{ for(i=3;i {原创 2011-05-31 19:40:00 · 466 阅读 · 0 评论 -
CONTAINING_RECORD _CR 宏理解
在EFI中常常遇到下面这个宏,他的作用是 //// CONTAINING_RECORD - returns a pointer to the structure// from one of it's elements.//#define _CR(Record, TYPE, Field) ((TYPE *) ((CHAR8 *) (Record) - (CHAR原创 2011-11-10 17:25:45 · 922 阅读 · 0 评论 -
C语言题目归类分析
1. ********************************************************************************************************************************************************************************int func(int a){原创 2011-11-24 09:16:35 · 514 阅读 · 0 评论 -
堆和栈的区别(转过无数次的文章) .
堆和栈的区别(转过无数次的文章) 一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。转载 2011-09-29 21:46:08 · 339 阅读 · 0 评论 -
指针 数组/函数
一:函数指针和指针函数函数名后面跟一对圆括号(兴许括号内还有参数),将导致去计算这个函数。仅仅一个函数名则意味着是一个指针,是一个地址,是指向这个函数的。1指针函数 类型名 *函数名(函数参数表列); 其中,后缀运算符括号“()”表示这是一个函数,其前缀运算符星号“*”表示此函数为指针型函数,其函数值为指针,即它带回来的值的类型为指针,当调用这个函数后,将得到一个“指向返原创 2011-06-29 08:45:00 · 415 阅读 · 0 评论 -
C语言代码规范
凡是都有规矩,没有规矩就不成方圆,为了让自己写的代码更具可读性,一致性,移植性更好,所以一定要遵循特定的coding convention,由于使用EFI 代码的缘故,所以本文的coding convention大多数参考intel EFI driver writer’s guide的 1缩进(Indentation and Line Length)有些风格使用tab建,有些使用空格键原创 2011-06-27 15:36:00 · 888 阅读 · 0 评论 -
回调函数 callback
本文引用于:http://www.cppblog.com/elvisch/archive/2008/05/14/49793.html 如有侵犯敬请告知 1.回调函数与普通函数的区别从概念上讲,回调函数与普通函数的本质在于:调用者的不同。普通函数由程序员代码调用,而回调函数由操作系统在适当的时间调用。 回调函数主要用于处各种事件和处理。由于WINDOWS系统中存在大量程序员事先不可知的转载 2011-06-21 19:36:00 · 968 阅读 · 0 评论 -
字符串常量 和字符常量
c语言中单引号双引号的区别1、含义不同。用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值。而一般我们的编译器采用的都是ASCII字符集。因此s的含义其实和十进制数0x73的含义是一致的。而用双引号引起的字符串,代表的是一个指向无名数组起始字符的指针,这个指针正好指向这个字符串的起始地址。 当字符串常量出现在表达式中时,他的值是个指针原创 2011-06-14 17:50:00 · 772 阅读 · 0 评论 -
c语言链表
链表中的每个节点其实就是一个指向这个节点的指针,对于第一个节点这个指针是跟指针;对于其他节点,这个指针是其他节点的link字段。每个节点都有一个指针指向他。原创 2011-06-14 17:20:00 · 393 阅读 · 0 评论 -
引用参数
以“&”打头的参数即为引用参数。 引用相当于给对象起了一个别名。当一个对象赋给一个引用后。无论对引用还是这个对象的访问都是对被引用的对象的地址空间的访问。 函数参数如果没有特别声明的话是传值引用的。也就是给函数传递过去实际参数的一份拷贝,当实际参数需要很大的空间时这样是不实际的做法。于是可以通过传递它的引用的方式解决。 但是传递引用的方式可以在函数原创 2011-06-12 22:33:00 · 2316 阅读 · 0 评论 -
华为的一道C语言面试题
设int arr[]={6,7,8,9,10};int *ptr=arr;*(ptr++)+=123;printf("%d,%d",*ptr,*(++ptr));答案是:8,8分析:*(ptr++)+=123;解释为:*(ptr++)=*(ptr++)+123 //数组第一个元素变为6+123 然后prt++ 指向7printf("%d,%d",*ptr,*(++ptr)); 只能解释为 printf函数从右到左开始处理,所以答案都是8,8原创 2011-05-31 20:06:00 · 736 阅读 · 0 评论 -
C++
构造函数 析构函数构造函数和类同门,对类中的成员进行初始化,会被默认调用的,析构函数在结束的时候被调用函数同名覆盖 函数重载函数覆盖是在不同类中函数的名字和参数完全相同,函数重载,重载函数的参数的类型和参数个数必须至少要有一个不相同面向对象的3个特性是:封装(数据结构和操作封装在一起),继承(基类被派生类继承,延续他的特性),多态(就是一个函数或操作符有多种作用,例如操作符原创 2012-03-14 12:27:37 · 559 阅读 · 0 评论