ITfeng

 

随笔分类 -  C

C语言学习笔记
C语言考点2
摘要:1static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?全局变量改成静态是限制了它的使用范围,局部变量改成static是改变存储方式和生命周期static全局变量与普通的全局变量有什么区别:static全局变量只初使化一次,防止在其他文件单元中被引用;static局部变量和普通局部变量有什么区别:static局部变量只被初始化一次,下一次依据上一次结果值;static函数与普通函数有什么区别:static函数在内存中只有一份,普通函数在每个被调用中维持一份拷贝程序的局部变量存在于(堆栈)中,全局变量存在于(静态区 ) 阅读全文

posted @ 2012-05-09 14:15 ITfeng 阅读(160) 评论(0) 推荐(0)

约瑟夫环-----数数
摘要:#include<stdio.h>#include<stdlib.h>typedef struct list{int data;struct list*next;}List;List*insert_list(List*head,int data){List*newnode=(List*)malloc(sizeof(List));List*tail=head;newnode->data=data;if(head==NULL){newnode->next=newnode;return newnode;}while(tail->next!=head){tai 阅读全文

posted @ 2012-05-09 14:06 ITfeng 阅读(192) 评论(0) 推荐(0)

C语言考点
摘要:1 static的作用1)在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。2) 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。3) 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用2 引用和指针的区别(1)引用必须被初始化,指针不必(2)引用在初始化后不能改变,而指针可以改变所指的对象(3)不存在指向空值的引用,但是存在指向空值的指针3 描述实时操作系统的特性在特定时间内完成特定任务,实时性和可靠性4. 全局变量和局部变量在内存 阅读全文

posted @ 2012-05-09 11:12 ITfeng 阅读(174) 评论(0) 推荐(0)

经典递归程序----反向输出字符串
摘要:#include<stdio.h>void reverse(char*s);int main(){char *a="hello world";reverse(a);}void reverse(char*s){if(*s=='\0')return ;reverse(s+1);printf("%c",*s);} 阅读全文

posted @ 2012-05-08 21:34 ITfeng 阅读(164) 评论(0) 推荐(0)

浮点数转成字符串
摘要:#include<stdio.h> #include<stdlib.h>char*func(double num,char str[]){int i,temp,j=0;temp=(int)num;//先取整数部分while(temp){str[j++]=temp%10+'0';temp/=10;}//注意数是逆序的 ,需要转换for(i=0;i<j/2;i++){temp=str[i];str[i]=str[j-i-1];str[j-i-1]=temp;} str[j++]='.';num-=(int)num;for(i=0;i&l 阅读全文

posted @ 2012-05-08 20:51 ITfeng 阅读(285) 评论(0) 推荐(0)

大数相乘问题--解决方案
摘要:#include<stdio.h>#include<stdlib.h>#include<string.h>void mutiply(char*a,char*b,char*res){int len1,len2,len;char temp;int*result;int i=0,j;int startFlag=0;len1=strlen(a);len2=strlen(b);len=len1+len2+1;result=(int *)malloc(len*4);for(i=0;i<len;i++)result[i]=0;for(i=0;i<len1/2; 阅读全文

posted @ 2012-04-26 21:18 ITfeng 阅读(241) 评论(0) 推荐(0)

C语言学习笔记-数组
摘要:一.C语言中参数传递传递都是传值,都是对数值的拷贝的一个副本二.递归与迭代用递归能够解决的问题,一定能用迭代(循环)解决(1)递归的特点:思路简单,运算较慢使用递归,关键是找到递归的出口递归由于不停地出栈和入栈,并且前一次的结果并没有保留,下一次还得计算,所以效率是比较低的改进递归算法的一种方法是将前面的计算结果进行保留,提高效率(2)迭代就是用循环解决问题,迭代算法的效率是很高的三.有关数组的理解(1)数组名永远是数组中第一个元素的地址(2)*和[]是一样的(3)二维数组也可以看做是一维数组,只不过数组中每个元素又是一个数组四.数组小练int array[10];int *ap=array+ 阅读全文

posted @ 2012-04-13 21:25 ITfeng 阅读(937) 评论(0) 推荐(0)

C语言学习笔记-运算符笔记
摘要:一.运算符的优先级算数运算符>移位运算符>关系运算符>逻辑运算符>赋值运算符,的运算等级是最低的value=value|1<<x;这里<<比|等级高,先执行移位,在执行|,最后赋值二.在赋值操作时要考虑的是类型转换比如int型转化为char型时要截短三.关于++和--a++是先取a的值,然后a再自增++a是先自增a的值,然后在取自增后a的值--一样的原理 阅读全文

posted @ 2012-04-13 14:45 ITfeng 阅读(173) 评论(0) 推荐(0)

C语言学习笔记1
摘要:一.关于define 跟typedef的理解:define 是用一个名字来代替另一个名字typedef是对一个已经存在的类型 定义一个别名(1)#define ptr-int int *ptr-int a,b;是定义了一个int *类型指针变量a,定义一个int型变量b他只是简单的替代,在预编译时替代(2)typedef int * ptr-int;ptr-int a,b;是定义了一个int*的两个指针变量a和b二.对C语言中数据类型的理解C语言对不同类型的数据用不同类型的变量来进行存储C语言数据类型可以分为4种,有整型,实型,指针,聚合类型,前面三种是基本的类型整型有short,int,lo 阅读全文

posted @ 2012-04-13 13:56 ITfeng 阅读(198) 评论(0) 推荐(0)

导航