1.内存管理原理的介绍1.1C的内存管理char *p = (char *)malloc(100*sizeof (char));这是C的动态内存分配,我们手动跟系统申请了100个字节的内存;或者说系统在堆里开辟了100个字节的空间,并将这个空间的首地址返回给指针变量p。strcpy(p,"Hello...
分类:
编程语言 时间:
2014-12-16 18:49:39
阅读次数:
379
1.内存管理原理的介绍
1.1C的内存管理
char *p = (char *)malloc(100*sizeof (char));
这是C的动态内存分配,我们手动跟系统申请了100个字节的内存;或者说系统在堆里开辟了100个字节的空间,并将这个空间的首地址返回给指针变量p。
strcpy(p,"Hello World!");
将字符串拷贝给指针...
分类:
编程语言 时间:
2014-12-16 10:02:39
阅读次数:
298
引用贴:http://www.cnblogs.com/csyisong/archive/2009/01/09/1372363.html首先#define为预处理,与typedef是完全不同的机制。详细机制尚未完全明了。请参考前人文章。用法一:指针变量代替。char* pa, pb;//这多数不符合我...
分类:
其他好文 时间:
2014-12-15 12:00:18
阅读次数:
171
1:指针定义格式:格式:变量类型 *变量名用途:指针变量用于储存地址(only),也就是根据地址值,访问对应的存储空间。注意。int *p 只能指向int类型的数据; 例: int a = 20;int *p;p = &a;//既p代表地址,*p代表值//这时的* 代表指针变量p指向的存储空间,目的...
分类:
编程语言 时间:
2014-12-15 01:22:30
阅读次数:
225
所有的程序都必须留出足够的内存来存储它们使用的数据。一些内存分配是自动完成的。在运行时需要分配更多的内存。主要的工具是函数malloc(),它接受一个参数:所需要内存字节数。然后malloc找到可用内存中一个大小合适的块。内存是匿名的;也就是说,malloc()分配了内存,但没有为它指定名字。然而,它却可以返回那块内存第一个字节的地址。因此,可以把那个地址赋值给一个指针变量,并使用该指针来访问那块...
分类:
其他好文 时间:
2014-12-14 21:21:15
阅读次数:
198
1.内存管理原理的介绍1.1C的内存管理 char *p = (char *)malloc(100*sizeof (char)); 这是C的动态内存分配,我们手动跟系统申请了100个字节的内存;或者说系统在堆里开辟了100个字节的空间,并将这个空间的首地址返回给指针变量p。 strcpy(p,"He...
分类:
编程语言 时间:
2014-12-14 21:17:31
阅读次数:
217
1.最简单的用法: 1 #include 2 3 int (*p)(int);//定义一个函数指针变量p(下面的f其实是一个常量函数指针) 4 int f(int x) 5 { 6 printf("%d\n",x+2); 7 return 0; 8 } 9 10 int main...
分类:
其他好文 时间:
2014-12-12 14:46:39
阅读次数:
179
第一篇、函数指针函数指针,表示的是一个指针,它指向的是一个函数,它含义是指指向函数的指针变量,在C编译时,每一个函数都有一个入口地址,那么这个指向这个函数的函数指针便指向这个地址。函数指针的用途是很大的,主要有两个作用:1、用作调用函数2、做函数的参数。函数指针的声明方法:数据类型标志符 (指针变量...
分类:
编程语言 时间:
2014-12-10 16:07:39
阅读次数:
239
1.数组元素的访问方式 int ages[5]; int *p; p = ages; 1> 数组名[下标] ages[i] 2> 指针变量名[下标] p[i] 3> *(p + i) 2.指针变量+1,地址值究竟加多少,取决于指针的类型 int * 4 char * 1 double...
分类:
编程语言 时间:
2014-12-08 00:35:13
阅读次数:
198
int *p;//第一个*是象征意义。p = &a;等价于int *p = &a;//第二个*是不正确的*p = &a;//第三个*是访问指针变量指向的存储空间。*p = 10;等价于 a 的变量换成了 10;
分类:
编程语言 时间:
2014-12-07 23:05:48
阅读次数:
161