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

济南 网站建设那家好想学设计师首先要学什么

济南 网站建设那家好,想学设计师首先要学什么,做网站需要什么东西,华为云助力企业网站安全保障指针一、什么是指针二、指针类型三、指针和数组的关系四、空指针五、野指针一、什么是指针 指针#xff08;Pointer#xff09;是编程语言中的一个对象#xff0c;通过地址直接指向内存中该地址的值。由于通过地址能够找到所需的变量存储单元#xff0c;可以说地址指向该变… 指针一、什么是指针二、指针类型三、指针和数组的关系四、空指针五、野指针一、什么是指针 指针Pointer是编程语言中的一个对象通过地址直接指向内存中该地址的值。由于通过地址能够找到所需的变量存储单元可以说地址指向该变量存储单元因此将地址形象化称为指针。总而言之指针就是变量存放内存单元的地址存放在指针中的值都会被当作地址处理。 #include stdio.h int main(){int a 5; // 在内存中开辟一块存储空间存放变量a的值5int* p a; // 取出变量a的地址存放在变量p中p就是一个指针变量// int* p;// p a;return 0; }如下图所示 此时在内存中开辟一块存储空间存放变量a的值5同时定义了一个指针变量p将变量a的地址赋给指针变量p此时指针变量p内存放的就是变量a的地址通过*p即可访问到指针变量p指向地址的数据即 *p 的值为 5 。 二、指针类型 所有实际数据类型不管是整型、浮点型、字符型还是其他的数据类型对应指针的值的类型都是一样的都是一个代表内存地址的长的十六进制数。不同数据类型的指针之间唯一的不同是指针所指向的变量或常量的数据类型不同。 1、指针类型决定了指针进行解引用操作的时候能够访问空间的大小。 int* p;* p能够访问4个字节 char* p; * p能够访问1个字节 double* p; *p能够访问8个字节 2、指针类型决定了指针的步长。例如 #include stdio.h int main(){int a 5; int* pa a;char* pc a; printf(pa %p\n,pa);printf(pa1 %p\n,pa1);printf(pc %p\n,pc);printf(pc1 %p\n,pc1);return 0; }此时定义了3个类型的指针分别为char *、int *、double *分别对其进行加1操作结果如下 此时int *类型的指针加1操作的步长为4char * 类型的指针操作步长为1double * 类型的指针操作步长为8。 三、指针和数组的关系 数组名即该数组首元素的地址即数组名就是一个指针。 #include stdio.h int main(){int arr[5] {1,2,3,4,5};int *p arr; // 数组名即该数组首元素arr[0]的地址for (int i 0; i 5; i){printf(%d ,*(pi));} printf(\n);for (int i 0; i 5; i){printf(%d ,*(arri));} return 0; }运行结果 四、空指针 在指针声明的时候如果没有确切的地址可以赋值为指针变量赋一个 NULL 值是一个良好的编程习惯。赋为 NULL 值的指针被称为空指针。 #include stdio.h int main(){int* p NULL;printf(p的地址是%p,p);return 0; }五、野指针 野指针就是指针指向的位置是不可知的随机的、不正确的、没有明确限制的。 1、野指针形成原因 1指针未初始化 例如 #include stdio.h int main(){int a; // 局部变量不初始化默认是随机值int* p; // 局部指针变量未进行初始化默认为随机值*p 20;return 0; }2指针越界访问 例如 #include stdio.h int main(){int arr[5] {0};int* p arr;for (int i 0; i 5; i){// 当i 5时指针的范围超出了数组arr的范围时p就是野指针*(p) i;}return 0; }当i 5时指针的范围超出了数组arr的范围时p就是野指针。 3指针指向的空间释放 例如 #include stdio.hint* test(){int a 10;return a; }int main(){int* p test();*p 20;return 0; }当在执行test()函数时开辟了一块存储空间存放a执行int* p test();这条语句p接收到了test()函数返回的地址执行完这条语句之后test()函数中存放a的存储空间被操作系统回收了此时指针p所指向的地址已经不是先前存放a的地址了p就成了一个野指针这时在对*p赋值就会出错。 2、如何规避野指针 1指针初始化 2避免指针越界 3指针指向空间释放时置为NULL 4使用指针前检查有效性
http://www.hkea.cn/news/14422705/

相关文章:

  • 公司百度网站怎么做chrome官方下载
  • 网站开发 功能不会写长沙企业模板建站
  • 公司资质查询官方网站wordpress教程 下载地址
  • 无锡网站排名优化报价公司网站制作步骤
  • 网站除了做流量还需要什么软件镇江手机网站建设
  • 全网网站建设优化广东网站建设服务公司
  • ui培训班多少钱seo策略怎么写举例
  • 河南平顶山网站建设与管理专业门户网站建设先进性
  • seo 网站title搭建网站框架
  • 建设部网站碎发零能耗住宅电子商务网站建设报告范文
  • 档案信息网站开发利用网页美工设计的要点分别是什么
  • 合肥网站优化排名推广温州专门做网站
  • 网站建设具体步骤应该怎么做wordpress 菜单 跳转
  • 成都哪家公司做网站比较好个人作品展示网站
  • 各种浏览器网站大全定制戒指
  • 主营商城网站建设如何做免费网络推广
  • 贵阳网站建设app开发微信小程序开发官方文档
  • 启航做网站怎么样拼多多开网店
  • 代刷网站推广网站首页图
  • 中小企业做网站贷款宁波专业做网站的公司哪家好
  • 玻璃行业做的非常有设计感的网站做百度网上搜索引擎推广最好网站
  • 系列图标设计网站推荐官网招聘和招聘网站
  • 外贸开发产品网站建设wordpress acf破解版
  • 易科技 建设网站淄博建站网络公司
  • 网站建设费可以计入办公费用么asp.net电子商务网站前台模板
  • 东莞网络网站建设群晖 wordpress 迁移
  • 做传销网站的具体的网站建设
  • 广州网站建设企业网站被百度降权了怎么办
  • 周大福网站设计特点做医疗的网站建设
  • 重庆教育建设集团有限公司网站小红门网站建设