常见指针错误
2016-01-21 16:16
381 查看
section 1: void func() { char * p; char buf[1024]; p = malloc( 1024 ); if( p == NULL ) { perror("malloc"); } memset(p , 0 , 1024); p = buf; // 指针重新指向了buf这个空间,p被释放时实际释放的是buf的空间,因此出错; // 应使用拷贝函数赋值; // sprintf( p ,"%s", buf); free(p); }
section 2:
malloc( sizeof(12) ); //12是整数 sizeof(12) 的值是4,malloc了4个字节的空间;
malloc( 12 ); //malloc了12个字节的空间
相关文章推荐
- 关于指针的一些事情
- C# Pointer指针应用实例简述
- C++智能指针实例详解
- C++指向函数的指针实例解析
- 关于c语言指针的两处小tip分享
- 浅析iterator与指针的区别
- 探讨C++中数组名与指针的用法比较分析
- 详解C++中的指针、数组指针与函数指针
- c语言中malloc、realloc与calloc 的区别以及联系
- C++中字符串以及数组和指针的互相使用讲解
- C语言安全之数组长度与指针实例解析
- C++中指向对象的常指针与指向常对象的指针详解
- C++中new与delete、malloc与free应用分析
- 指向变量的常指针与指向常变量的指针详细解析
- C#通过指针实现快速拷贝的方法
- php中将指针移动到数据集初始位置的实现代码[mysql_data_seek]
- C#通过指针读取文件的方法
- C语言指针学习经验总结浅谈
- C语言中的malloc使用详解
- C++交换指针实例