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

网站建设经费保障如何申请百度竞价排名

网站建设经费保障,如何申请百度竞价排名,网站备案级别,网站上传根目录文章目录 前言练习1#xff1a;练习2#xff1a;练习3#xff1a;练习4#xff1a; 前言 学习完C语言中的动态内存管理#xff0c;大家开始利用动态内存管理来去开辟空间#xff0c;经过一顿狂敲代码后#xff0c;发现了问题#xff0c;程序要么崩掉#xff0c;要么运… 文章目录 前言练习1练习2练习3练习4 前言 学习完C语言中的动态内存管理大家开始利用动态内存管理来去开辟空间经过一顿狂敲代码后发现了问题程序要么崩掉要么运行不起来。小编现在给大家分享动态内存中常见的练习如有谬误欢迎指正 练习1 void GetMemory(char* p) {p (char*)malloc(100); } void Test(void) {char* str NULL;GetMemory(str);strcpy(str, hello world);printf(str); }运⾏Test 函数会有什么样的结果 敲完代码运行一下程序崩掉啦。这里的GetMemory函数采用的是值传递形参是实参的一份临时拷贝。p和str是各自独立的两个指针GetMemory)函数让p开辟了一个内存空间。但是重点p的值最初是在str中拷贝的拷贝完之后两个指针没有任何关系。当GetMemory函数结束后p的内存就被释放掉了然后执行srecpy此时str仍然是一个空指针这个程序也就无法被访问。 还有一个问题是GetMemory中申请的内存空间没有被释放掉存在内存泄漏问题。 改进后的代码 void GetMemory(char** p)//形参用二级指针接收此时p里面存的是str的地址 {*p (char*)malloc(100);//*p得到str让str指向新开辟的空间 } void Test(void) {char* str NULL;GetMemory(str);//址传递strcpy(str, hello world);printf(str);free(str);str NULL; }int main() {Test();return 0; }运行结果 hello world这个问题在日后会经常遇到需要留意一下。 练习2 char* GetMemory(void) {char p[] hello world;return p; } void Test(void) {char* str NULL;str GetMemory();printf(str); }运⾏会有什么样的结果 数组p是一个局部变量 在 GetMemory 函数之后数组 p 的内存空间就被销毁了还给了操作系统虽然把这个数组首元素的地址返了回去但此时再通过地址去访问这一块空间就成了非法访问。 修改后的代码 char* GetMemory(void) {char* p hello world;return p; } void Test(void) {char* str NULL;str GetMemory();printf(str); }int main() {Test();return 0; } 运行结果 hello world练习3 void GetMemory(char **p, int num) { *p (char *)malloc(num); } void Test(void) { char *str NULL; GetMemory(str, 100); strcpy(str, hello); printf(str); }运行结果 hello world这段代码运行后发现是可以的但是看到了malloc却看不到free存在内存泄漏问题 修改后的代码 void GetMemory(char** p, int num) {*p (char*)malloc(num); } void Test(void) {char* str NULL;GetMemory(str, 100);strcpy(str, hello);printf(str);free(str);str NULL; }int main() {Test();return 0; }练习4 void Test(void) { char *str (char *) malloc(100); strcpy(str, hello); free(str); if(str ! NULL) { strcpy(str, world); printf(str); } }运⾏会有什么样的结果 world代码也是可以运行的 但是依然有错 因为早在开始就把str给释放了这块内存权限给了操作系统 在 free 完后没有把 str 置为空所以 str 还是指向那块空间此时的 str 已经变成了一个野指针后面一些列涉及 str 的操作都属于非法访问。 修改后的代码 void Test(void) {char* str (char*)malloc(100);strcpy(str, hello);free(str);str NULL;if (str ! NULL){strcpy(str, world);printf(str);} }
http://www.hkea.cn/news/14316069/

相关文章:

  • 网站建设可行性研究唐山网站建设那家性价比高
  • 江西宗杰建设工程有限公司网站网站怎么备案啊
  • app网站开发著名的网络营销案例
  • 西安建设网站的公司哪家好凡科送审平台学生不能登录
  • 美食网站模板下载做导航网站用什么建站程序
  • 怎样建设与维护自己的平台网站dw php网站建设视频教程
  • 网站 猜你喜欢 怎么做哪个做网站公司
  • 微网站的搭建流程网站建设常用的6大布局加代码
  • 滨州网站开发公司怎么建一个网站卖东西
  • 网站开发费属于什么费用二次元博客源码wordpress
  • 代理 网站前置审批西部建设网站
  • 网站开发集成软件建设银行手机登陆网站
  • 舞台灯光网站建设公司个人网站页面设计素材
  • 做网站是怎么做的网站建设wordpress
  • 有谁想做网站 优帮云个人建站教程
  • 怎么制作网站vi页面店铺管理app
  • 做的好的响应式网站有哪些中企动力 网站建设 收费
  • 在工商网站上怎么做电话的变更音乐网站怎么做精准关键词
  • 如皋企业网站建设用电脑记事本做网站
  • 重庆网站建设平台免费学校网站建设目的
  • 自做业务网站上海比较好的设计院
  • 常州市建设局网站网页软件下载
  • 太原网站建设解决方案如何做logo标志
  • 建站宝盒后台茂名放心营销网站开发
  • 百度的网站收录怎么做wordpress 高级自定义
  • 企业网站建设基本思路自定义标签wordpress
  • 长沙模板建站哪家好网站建设开发公司报价
  • 南宁优化网站收费世界最受欢迎的免费架站平台
  • 电商网站运营建设的目标网站 实例
  • 无代码做网站网站做收付款接口