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

Html5手机静态网站设计小程序制作教程视频

Html5手机静态网站设计,小程序制作教程视频,哪些平台可以建立网站吗,网站设计风格说明1、malloc函数详解 #xff08;1#xff09;函数声明 #include stdlib.h void* malloc(size_t size);malloc可以申请一定数量的空闲内存#xff0c;这样的内存是匿名的#xff0c;也就是malloc不会为其赋名#xff0c;但是确实返回动态分配内存块的首元素地址1函数声明 #include stdlib.h void* malloc(size_t size);malloc可以申请一定数量的空闲内存这样的内存是匿名的也就是malloc不会为其赋名但是确实返回动态分配内存块的首元素地址因此可以把该地址赋给一个指针变量利用这个指针访问这块内存malloc通常返回一个char类型的指针因为char表示一个字节。然而从ANSI C标准开始C使用一个新的类型void*即一个指向void的指针相当于一个“通用指针”由此malloc可以返回多个类型的指针。所以通常malloc的返回值都会强制转化为匹配的类型把指向void的指针赋给任意类型的指针完全不需要考虑类型匹配的问题如果malloc分配内存失败就会返回空指针 2使用函数 ①使用malloc创建一个数组 double* ptd; ptd (double*)malloc(30 * sizeof(double)); if(ptd NULL)//有可能不会分配到内存 {printf(Nunber not correctly entered -- bye);exit(EXIT_FAILURE);//程序异常终止程序 } //某些使用ptd的程序 free(ptd);//用完后释放申请的空间将内存还给计算机 ptd NULL;//并且将还记住地址ptd指针置空②使用注意事项 如果让ptd指向这块内存的首元素便可以使用数组名一样使用它也就是说可以使用ptd[0]、ptd[1]等指针用法ptd指向的是一个double类型的指针而不是整个30个double类型的块在C中不一定使用强制转化类型但是在C中必须使用在C中使用强制类型转换更加容易把C程序转化为C最后两步是为了避免内存泄露的问题后面会提到 ③三种创建数组的方式 声明数组直接用常量表达式表达数组的维度用数组名访问数组的元素可以用静态内存或自动内存创建这种数组声明变长数组C99新增特性用变量表达式表达数组的维度具有这种特性的数组只能在自动内存中存储声明一个指针调用malloc函数将其返回值赋给指针使用这个指针访问数组的元素该指针可以是静态的或自动的 2、free函数详解 1函数声明 #include stdlib.h void free(void *ptr);free通常都会搭配malloc使用free的参数是之前mlloc返回的地址该函数释放之前malloc分配的一块内存。不能使用free释放其他方式例如声明一个数组后使用free这样配套使用的话malloc分配内存free释放内存可以重复利用一块内存空间内存池 2使用函数 double* ptd; ptd (double*)malloc(30 * sizeof(double)); free(ptd); ptd NULL;3、exit函数详解 1函数声明 #include stdlib.h void exit(int status);如果malloc函数分配内存失败可以调用函数exit结束程序status是返回给父进程的状态值。标准提供了两个返回值被定义在stdlib.h中保证在所有的操作系统中都能正常工作一些操作系统还会接受一些表示其他运行错误的整数值 EXIT_FAILURE表示程序异常终止EXIT_SUCCESS相当于0表示普通的程序结束 2使用函数 int sum 0; if(scanf(%d, sum) ! 1) {printf(Nunber not correctly entered -- bye);exit(EXIT_FAILURE); }4、内存泄露的危害 void function(int n) {double* temp (double*)malloc(n * sizeof(double));/*假设忘记使用函数free()*/ } int main() {for(inţ i 0; i 1000000)function(1000000); }如果没有使用free函数将malloc申请的内存释放的话1000000*1000000就有可能将所有内存耗尽这类问题就被称为内存泄露在函数末尾调用free函数可以避免这类问题。 5、动态内存分配和变长数组的区别 动态内存分配malloc和变长数组VLA在功能上有点重合比如两者都可以用于创建在运行时才确定大小的数组不同的是变长数组是自动存储类型。因此程序在离开变长数组定义的块的时候变长数组占有的空间会被自动释放不必使用free函数另外一方面free所用的指针变量可以与malloc函数的指针变量不同但是两个指针必须存储相同的地址并且不能释放两次对多维数组来说使用VLA在语法上更加的方便使用malloc就会显得复杂得多 int n 5, m 6;int ar2[n][m];//变长数组要求支持VLAint (* p2)[6];//指向一个6元素数组的指针使用变量p2存储 int (* p3)[m];//指向一个m元素数组的指针使用变量p3存储要求支持VLA p2 (int (*)[6])malloc(n * 6 * sizeof(int));//n*6数组 p3 (int (*)[m])malloc(n * m * sizeof(int));//n*m数组要求支持VLA6、存储类别和动态内存分配 1简单分类内存 可以简单认为程序把它可用的内存分为3部分 供给具有外部链接、内部链接和无连接的静态变量使用供给自动变量使用供给动态内存分配使用内存堆/堆/自由内存 2三类内存的细节 静态存储类别的变量使用的内存数量在编译的时候就确定只要程序还在运行就可以访问存储在该部分的数据。该类别的变量在程序开始执行时就被创建在程序结束的时候被销毁自动存储类别的变量在程序进入变量定义的块时存在程序离开块的时候消失。因此随着程序调用函数和函数结束自动变量所用的内存数量也在相应的增加或减少。这部分的内存通常作为栈来处理这意味着新创建的变量按顺序加入内存然后以相反的顺序销毁动态分配的内存在调用malloc函数或相关函数的时候存在在调用free函数后释放这一部分的内容由程序员管理而不是某套规则。另外未使用的内存块分散在已使用的内存块之间使用动态内存通常比使用栈内存慢
http://www.w-s-a.com/news/366910/

相关文章:

  • 为什么网站很少做全屏福利WordPress网站自动采集源码
  • 网站备案法律diy
  • 淘宝客如何新建网站物业管理系统app
  • 品牌网站建设策重大军事新闻视频
  • 廊坊建设网站的公司wordpress清理无用缩略图
  • 桓台网站建设公司首钢建设二建设公司网站
  • 网站建设添加背景命令前端如何优化网站性能
  • 设置网站域名中山画册设计公司
  • 三更app下载网站东莞网站制作公
  • 做图书馆网站模板网站建设文化策划方案
  • 惠州城乡住房建设厅网站服装设计自学零基础
  • 网站建设常态化工作机制广州骏域网络
  • h5婚纱摄影网站模板wordpress 显示下列项目
  • 广告网站推广销售北京最新消息发布
  • 完整网站源码asp拨打12355可以找团员密码吗
  • 北京有多少家网站怎么自己在百度上做网站
  • 怎样围绕网站专题发展来做ppt网站建设回龙观
  • 网站配置服务Wordpress红色网站源码
  • 外贸网站建设内容包括软件开发公司流程
  • 做中医药网站有前景吗企业网站优化公司
  • 四川建设设计公司网站海南澄迈县
  • 邳州做网站梵克雅宝项链官网价格图片
  • dede网站收录滦平县建设局网站
  • 上海网站建设开发公注册公司要求什么条件
  • 安徽汽车网网站建设wordpress 知乎
  • 网站建设的功能都需要有哪些在线平台
  • 湖南岳阳网站开发网络公司石家庄做网站的公司哪个好
  • 西安市做网站的公司门户网站对应序号是什么
  • 太原网站域名开发什么是网页界面设计
  • 做产品类网站有哪些做一百度网站吗