小鱼儿游啊游啊。。。。
全部博文(338)
发布时间:2013-01-08 10:58:20
在模块的编写过程中,我们经常使用定时器来等待一段时间之后再来执行某一个操作。为方便分析,写了下列一段测试程序:#include <linux/config.h>#include <linux/kernel.h>#include <linux/module.h>#include <linux/interrupt.h>#include <linux/delay.h>#include <linux/timer.h> MODULE_LICENSE("GPL");......【阅读全文】
发布时间:2013-01-08 10:41:46
在模块的编写过程中,我们经常使用定时器来等待一段时间之后再来执行某一个操作。为方便分析,写了下列一段测试程序:#include <linux/config.h>#include <linux/kernel.h>#include <linux/module.h>#include <linux/interrupt.h>#include <linux/delay.h>#include <linux/timer.h> MODULE_LICENSE("GPL");......【阅读全文】
发布时间:2013-01-07 14:39:16
swap(int *p1,int *2){int temp; temp=*p1; *p1=*p2; *p2=temp;}main(){int a,b; int *pointer_1,*pointer_2; scanf("%d%d",&a,&b); pointer_1=&a;pointer_2=&b; if(a<b)swap(pointer_1,pointer_2); printf("%d,%d\n",a,b);}进入函数后,函数创建几个空间给形参,再把实参数值拷过来。退出函数时,把形参空间释放,则影响不到实参。这就是值传递。 swap(int *p1,in......【阅读全文】
发布时间:2013-01-05 17:12:35
一、使用指针做函数返回值:1、当使用指针做为函数的返回值时,主函数处的char *p;将获得调用函数char *pf;的值,即一个地址值,如oxAE72。此时需要我们注意的是该地址值所指向的空间是否存在(即已向操作系统声明注册,不会被释放,即可能被其他操作修改);2、使用栈内存返回指针是明显错误的,因为栈内存将在调用结束后自动释放,从而主函数使用该地址空间将很危险。 例如: char* GetMemory() &nbs......【阅读全文】
发布时间:2013-01-03 15:40:35
代码1:void GetMemory(char *p){ p = (char*)malloc(100);}int main(int argc, char *argv[]){ char *str = NULL; GetMemory(str); strcpy(str, "Hello"); return 0;}str没有得到分配内存的地址值。 内存空间状态:首先申请了四个字节的栈空间,存放str指针,此时str的值为0,存放str的这块内存的地址值为0x0012ff7c。调用函数 GetMemory,指针P入栈,也分配了四个字节的栈空间,P被赋str的值即此时P的值也为0,存放指针P的内存......【阅读全文】