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

有源码如何搭建网站网页无法访问什么原因

有源码如何搭建网站,网页无法访问什么原因,外贸订单,山东浩景建设有限公司网站简介#xff1a;本系列博客为C深度解剖系列内容#xff0c;以某个点为中心进行相关详细拓展 适宜人群#xff1a;已大体了解C语法同学 作者留言#xff1a;本博客相关内容如需转载请注明出处#xff0c;本人学疏才浅#xff0c;难免存在些许错误#xff0c;望留言指正 作… 简介本系列博客为C深度解剖系列内容以某个点为中心进行相关详细拓展 适宜人群已大体了解C语法同学 作者留言本博客相关内容如需转载请注明出处本人学疏才浅难免存在些许错误望留言指正 作者博客链接睡觉待开机 下面是本节博客的大纲梳理 引言 在生活中我需要下载一个视频或者软件时候往往需要较长的时间相对来说但是我们如果删除相应的视频或者软件时候反而会很快相对来说这是为什么呢 这是一个比较奇特的现象在不懂的人看来。 下面针对该问题进行探讨为了便于大家理解我直接回答相关问题最后再做示例演示。 正文 答案计算机的数据下载需要把大量二进制数据进行拷贝。而计算机的数据删除本质上设置该数据无效即可无需清空数据。 1.数据下载与删除所需时间不同的原因 计算机数据的存入需要把相应数据全部复制到存储硬件内存、硬盘中进行存储也就是需要把该视频的音频数据图像数据的所有二进制文件全部拷贝到计算机中虽然计算机的处理速度很快但是一个大一点的电影就是十几个G再快也得几分钟才可以搞定。但是对于计算机而言删除数据并不会像我们想象那样需要把该视频文件全部回归初始状态而是计算机直接宣布放该视频的这块内存空间允许被其他内容覆盖。明白了这些自然数据下载很慢而数据删除很快了因为压根就没删。 为了便于大家理解我做一个比喻计算机的数据下载类似于我们盖一个新的大楼说起盖大楼要先打地基再向上一步一步搞总之非常麻烦。但是如果要拆除一座大楼呢写个拆字就行了。当然与之不同的是大楼拆除是会破坏原来大楼的结构的但是计算机为了效率的原因直接让那庞大的数据在那里就可以了便不再管了直到这块空间再次被使用才会覆盖为新的内容。 那这里其实大家就可以联想到为什么有些人建议不要卖掉你的手机或者电脑原因嘛上面的说明就是一个大概的一个情况具体这方面数据删除很复杂明白上面所说即可。 但是可能有人就想问了为啥计算机不把我们需要删除的内容进行修改防止个人信息泄露呢 一是为了效率问题如果要对删除内存空间进行初始化修改计算机估计要多一倍的工作量计算机是十分看重效率的这么做我想设计者也是为了追求效率吧。 二是为了减少计算机本身的硬件损耗这其实是硬件层面的知识了我也不太清楚只能说如果计算机对内存操作越频繁那么存储硬件损耗会越快我想这么做也是为了硬件寿命考量吧。 2.C语言中函数栈帧问题 了解到上面所讲的计算机对数据的下载和删除原理之后那么就可以联系到我们C语言中的函数栈帧了。我们知道我们C语言是由函数所构成的那么函数是在哪里进行存储的呢是在内存在具体而言是在内存栈空间。 这里就不得不提一下C程序地址空间的相关概念了这个C程序地址空间实际并不存在是为了便于我们理解人们所抽象出来的操作系统进程地址空间不是真正意义上的内存空间不是内存真正的空间。 每当我们C程序调用一个函数时候会预先给这个函数一块固定大小的空间让该函数中的变量在所给该函数的栈空间中开辟属于变量的内存空间。在函数调用开始时候操作系统会把我们计算机内存中的一块空间给我们某个函数使用一旦该函数调用结束那么就收回该空间。 我们一般称操作系统给函数的这块空间为栈帧。 有同学可能好奇为啥计算机知道要给这个函数分配多少空间啊我可以比较形象的解释一下这个问题因为计算机提前看了一眼你写的代码虽然没有执行但是大概知道你写的函数需要给多少空间啦。 总结下来就是调用函数形成栈帧结束函数释放栈帧同理这里释放栈帧只是允许其他内容覆盖该栈帧空间并不是真正意义上的删除原先数据。 那么实际上上面所说的内容可以回答两个问题 一是为啥局部变量具有临时性的问题原因很简单因为局部变量都是在函数内部进行定义的也就是说变量的存在依托于他所在函数的存在他函数所在空间都被收回了作为在里面的变量自然也就消失了。 为了大家理解我可以举个比喻性的例子就是古代西方国家与贵族的例子吧一个古代西方国家有一个国王还有一堆贵族组成函数在这里就类似于国家变量类似于贵族你说国家都灭亡了这个国家的贵族还能有吗哈哈对吧。这恰到好处的解释了为什么局部变量具有临时性的问题你可能会疑问那全局变量呢全局变量的空间开辟并不是在函数内完成而是跑到了全局数据区伴随着程序的消亡而消亡这又是另一个话题了。 二可以回答函数无限递归导致崩溃的问题也很好理解函数无限递归也就是说在第一个函数里调用第二个函数第二个函数里调用第三个函数…一直调用我们操作系统一直没有机会去收回我们函数的空间栈空间迟早有一天会被无限递归占满那么自然会导致栈溢出崩溃。 3.return数据与临时变量接收的本质 在C语言中有一个关键字叫return专门用来返回一个函数的返回值。我们说了一个函数调用结束便意味着消亡那么这个函数内的值是怎么返回到调用这个函数的函数中去的 为了便于大家理解我说的啥意思我直接给一个具体的例子 //如何正确理解这段代码 #include stdio.h #include windows.h char* show() { char str[] hello bit; return str; } int main() { char *s show(); printf(%s\n, s); system(pause); return 0; }实际上是借助了寄存器。 那么该如何验证呢需要看反汇编。 上面代码的结果是函数及时被销毁了但是如果数据没有被覆盖那么依然可以找到数据,但是如果被覆盖了那显示结果大概就是乱码了。 在这个例子中覆盖show函数数据的函数是printf函数。 未覆盖数据之前还可以看到原本的值 然后最后再说一点就是函数返回值与函数返回值的接收是独立的。 完。
http://www.hkea.cn/news/14543398/

相关文章:

  • 南通外贸建站破解网站后台密码
  • 三网合一网站模板wordpress购买阅读
  • app加网站开发海外推广网站
  • 品牌手机网站开发公司哪家好山东高端网站建设
  • 无锡网站建设服务公司个人网站有什么缺点
  • 张家港做网站的推荐wordpress 手机端异常
  • 南通网站建设策划找网站设计
  • 已有网站怎么修改可信网站认证哪里有
  • 想建个板栗网站怎么做普洱专业企业网站建设
  • 基于php网站建设论文华大 网站建设
  • 淄博学校网站建设公司红花岗区住房和城乡建设局网站
  • 广州怎么找做网站的公司官方静态网站模板下载
  • 网站开发课程内部培训东莞建设网站开发
  • 网站层级深圳鸿天顺网站建设
  • 石家庄网站建设哪家专业安徽国华建设工程项目管理有限公司网站
  • 英文公司网站制作win7云主机怎么做网站
  • 网站监测浏览器类型上海自助建站
  • 毕设做网站可以用模板吗域名解析错误是什么原因
  • 网站建设的项目计划电脑装机网站
  • 帮别人做网站违法吗深圳建设网站需要多少钱
  • 做网站网络公司无收入网站首页设计教程
  • 青海公路建设市场信用信息服务网站著名的设计作品有哪些
  • 北京鑫创网站建设十大中国网站制作
  • 查看网站是什么语言做的做网站运营需要具备哪些能力
  • 电商后台管理网站模板建设银行网站查询密码设置
  • 海南公司注册网站举报网站平台怎么举报
  • 许昌网站推广公司网页设计的背景代码大全
  • 品牌营销型网站作用计算机网站开发工作证
  • 海尔商城网站建设维护seo推广专员工作内容
  • 视频网站点击链接怎么做济南网站建设云华互动