当前位置: 首页 > news >正文

网页设计和网站开发有什么区别爬虫科技网站建设

网页设计和网站开发有什么区别,爬虫科技网站建设,网站建设 排行,微营销论文常见的 C/C 段错误及对策 一、指针没有指向一块合法的内存 定义了指针变量,但是没有为指针分配内存,即指针没有指向一块合法的内存。这里举几个比较隐蔽的例子。 结构体成员指针未初始化;没有为结构体指针分配足够的内存;函数的…
常见的 C/C++ 段错误及对策
一、指针没有指向一块合法的内存

定义了指针变量,但是没有为指针分配内存,即指针没有指向一块合法的内存。这里举几个比较隐蔽的例子。

  • 结构体成员指针未初始化;
  • 没有为结构体指针分配足够的内存;
  • 函数的入口校验,一般在函数入口处使用assert(NULL != p)对参数进行校验。assert 是一个宏,而不是函数;
三、内存分配成功,但并未初始化
memset(a,0,sizeof(a));

memset 函数有三个参数,第一个是要被设置的内存起始地址;第二个参数是要被设置的值;第三个参数是要被设置的内存大小。

至于指针变量如果未被初始化,会导致if 语句或assert 宏校验失败。

四、内存越界

内存分配成功,且已经初始化,但是操作越过了内存的边界。这种错误经常是由于操作数组或指针时出现“多1”或“少1”。比如:

int a[10] = {0};
for (i=0; i<=10; i++)
{a[i] = i;
}

所以,for 循环的循环变量一定要使用半开半闭的区间,而且如果不是特殊情况,循环变量尽量从0 开始。

五、内存泄漏

用malloc 函数申请0 字节内存

另外还有一个问题:用malloc 函数申请0 字节内存会返回NULL 指针吗?

可以测试一下,也可以去查找关于malloc 函数的说明文档。申请0 字节内存,函数并不返回NULL,而是返回一个正常的内存地址。但是你却无法使用这块大小为0 的内存。这好尺子上的某个刻度,刻度本身并没有长度,只有某两个刻度一起才能量出长度。对于这一点一定要小心,因为这时候if(NULL != p)语句校验将不起作用

内存释放

malloc 两次只free 一次会内存泄漏;malloc 一次free 两次肯定会出错。也就是说,在程序中malloc 的使用次数一定要和free 相等,否则必有错误。这种错误主要发生在循环使用malloc 函数时,往往把malloc 和free 次数弄错了。这里留个 练习:

内存释放之后

释放完块内存之后,没有把指针置NULL,这个指针就成为了“野指针”,也有书叫“悬垂指针”。这是很危险的,而且也是经常出错的地方。所以一定要记住一条:free 完之后,一定要给指针置NULL。

六、内存已经被释放了,但是继续通过指针来使用

这里一般有三种情况:

第一种:就是上面所说的,free(p)之后,继续通过p 指针来访问内存。解决的办法就是给p 置NULL。

第二种:函数返回栈内存。这是初学者最容易犯的错误。比如在函数内部定义了一个数组,却用return 语句返回指向该数组的指针。解决的办法就是弄明白栈上变量的生命周期。

http://www.15wanjia.com/news/182425.html

相关文章:

  • 平面设计师必去的网站网站建设的要求及标准
  • 购物网站设计的目的甘肃省住房和城乡建设厅注册中心网站
  • 兼职网站制作电商网站如何提高转化率
  • 网站建设补充协议模板淘宝的网站建设情况
  • h5游戏平台代理seo关键词排名优化手机
  • 有名的网站制作公司成都网站建设索q479185700
  • 网站技术部做什么西昌有做网站的公司吗
  • 德国的网站后缀软件开发工程师是前端还是后端
  • asp 网站权限设计广州建设营销型网站
  • 怎样可以查到做网站公司上海互联网企业
  • 鹤壁网站开发茂名做网站的公司
  • 网页设计网络培训站长工具的使用seo综合查询排名
  • 株洲网站建设的公司网站前端建设都需要什么问题
  • 网站推广方案策划案例旅游网站建设策划方案
  • 网站搜索算法软件技术有限公司
  • 网站开发会计处理门户网站 建设商 排名
  • 做网站如何大网页临沂网站公众号建设
  • 网站设计制作费用手机设计房子的软件
  • 贾汪微网站开发垂直类网站怎么做推广
  • 厦门外贸商城网站建设综合服务门户网站建设
  • wordpress栏目页面排名优化培训
  • 广州市建设集团网站首页有关做详情页的参考网站
  • 第五届中国国际进口博览会召开时间简述什么是seo
  • 普通网站设计公司注册网站需要什么条件
  • 网站项目需求表深圳网站搭建找哪里
  • 上海网站建设制作百橙企业推广网站建设报价
  • 网站注册实名制怎么做微商城网站建设
  • 域名注册完成后怎么做网站郑州做网站电话
  • 运城个人网站建设广安做网站公司
  • 贵阳企业网站建设广东省公路建设公司官方网站