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

网站建设是啥工作海拉尔建网站

网站建设是啥工作,海拉尔建网站,昆明公司有哪些,怎么做企业网站推广需要多少钱目录 1.野指针1.1 野指针成因1.1.1 指针未初始化1.1.2 指针越界访问1.1.3 指针指向的空间释放 1.2 如何规避野指针1.2.1 指针初始化1.2.2 小心指针越界1.2.3 指针变量不再使用时#xff0c;及时置为NULL#xff0c;指针使用之前检查1.2.4 避免返回局部变量的地址 2.assert断言… 目录 1.野指针1.1 野指针成因1.1.1 指针未初始化1.1.2 指针越界访问1.1.3 指针指向的空间释放 1.2 如何规避野指针1.2.1 指针初始化1.2.2 小心指针越界1.2.3 指针变量不再使用时及时置为NULL指针使用之前检查1.2.4 避免返回局部变量的地址 2.assert断言 1.野指针 概念野指针就是指针指向的位置是不可知的随机的不正确的没有明确限制的。 1.1 野指针成因 1.1.1 指针未初始化 对比下面2段代码 //代码1 #include stdio.hint main() {int a 10;int* p a;*p 20;return 0; } //代码2 #include stdio.hint main() {int* p ;*p 20;return 0; }代码1中指针变量p明确指向了a进行了初始化。 代码2中指针变量p未进行初始化p是一个局部变量一个局部变量不初始化默认是随机值。此时p就是一个野指针 1.1.2 指针越界访问 上代码 #include stdio.hint main() {int arr[10] { 1,2,3,4,5,6,7,8,9,10 };int* p arr; //p此时不是野指针int sz sizeof(arr) / sizeof(arr[0]);int i 0;for (i 0; i sz; i){printf(%d , *p);p;}return 0; }画图演示为 当p访问至下标为10的时候越界访问此时p就是野指针 1.1.3 指针指向的空间释放 上代码 #include stdio.hint* test() {int a 10;return a; }int main() {int* p test();printf(%d\n, *p);return 0; }画图演示如下 按道理来说p可以通过存放的a的地址来找到a遗憾的是离开test函数时a的空间已经还给操作系统了已经不属于a了但是a的地址又给p了当我们对p中的地址进行解引用时此时p中的地址就是野指针了 1.2 如何规避野指针 1.2.1 指针初始化 明确知道指针应该指向哪里就初始化一个明确的地址。如果现在还不知道该指向哪里就初始化NULL。 注NULL是C语言中定义的一个标识符常量值是00也是地址这个地址是无法使用的读写该地址会报错。 例如 #include stdio.hint main() {int a 10;int* p1 a;//初始化一个明确地址int* p2 NULL;//初始化为NULLreturn 0; }1.2.2 小心指针越界 ⼀个程序向内存申请了哪些空间通过指针也就只能访问哪些空间不能超出范围访问超出了就是越界访问。 1.2.3 指针变量不再使用时及时置为NULL指针使用之前检查 当指针变量指向⼀块区域的时候我们可以通过指针访问该区域后期不再使⽤这个指针访问空间的时候我们可以把该指针置为NULL。因为约定俗成的⼀个规则就是只要是NULL指针就不去访问同时使用指针之前可以判断指针是否为NULL。 我们可以把野指针想象成野狗野狗放任不管是⾮常危险的所以我们可以找⼀棵树把野狗拴起来就相对安全了给指针变量及时赋值为NULL其实就类似把野狗栓前来就是把野指针暂时管理起来。 不过野狗即使拴起来我们也要绕着走不能去挑逗野狗有点危险对于指针也是在使用之前我们也要判断是否为NULL看看是不是被拴起来起来的野狗如果是不能直使⽤如果不是我们再去使用。 1.2.4 避免返回局部变量的地址 如造成野指针的第三个例子不要返回局部变量的地址。 2.assert断言 assert.h头文件定义了宏assert(),用于在运行时确保程序符合指定条件如果不符合就报错终止。这个宏常常被称为“断言” assert ( p ! NULL ); assert()宏接收一个表达式作为参数如果该表达式为真返回值非零assert()不会产生任何作用程序继续运行。如果表达式为假返回值为0assert()就会报错在stderr 中写入一条错误信息显示没有通过的表达式以及包含这个表达式的文件名和行号。 例如
http://www.w-s-a.com/news/113792/

相关文章:

  • 建设通同类网站网站设计公司种类
  • 台州专业做网站网站可以个人做吗
  • 个人logo在线生成免费乐陵德州seo公司
  • 网站回答问题app怎么做专业定制网红柴火灶
  • 网站做的最好的公司行业网址大全
  • 内网怎么做网站服务器seo统计
  • 丽水市企业网站建设 微信营销 影视拍摄计算机专业吃香吗
  • 龙岗做网站公司哪家好找到做网站的公司
  • 网站图片alt属性wordpress 自定义栏目 调用
  • 怎样建网站最快广州网站建设工程
  • iis7 网站404错误信息12306网站很难做吗
  • 网站建设600元包公司设计图片大全
  • 网站建设费用怎么做分录做校园网站代码
  • 网站改版做重定向福州网站建设思企
  • 网站建设全流程企业形象网站开发业务范畴
  • wordpress无法查看站点西安优秀高端网站建设服务商
  • 固始网站制作熟悉免费的网络营销方式
  • 做网站到a5卖站赚钱搜索引擎优化代理
  • 沈阳网站建设包括win10优化
  • 做百度手机网站点击软网站seo优化徐州百度网络
  • 徐州专业网站制作标志设计作业
  • 自己可以做网站空间吗海天建设集团有限公司网站
  • 教学督导网站建设报告aspcms网站图片不显示
  • 网站开发公司成本是什么门户网站宣传方案
  • 上海 企业网站建设网站怎么开通微信支付
  • 饮料网站建设wordpress主题猫
  • 网站建设需要编码不有没有专门的网站做品牌授权的
  • 做爰在线网站免费空间列表
  • 网站外链建设工作总结郑州网站建设扌汉狮网络
  • 建设企业网站的需要多长时间网站使用说明书模板