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

网站小程序定制公司oa管理系统软件

网站小程序定制公司,oa管理系统软件,整站seo外包,网页设计表格提示:关于指针 文章目录 前言一、指针的使用总结 前言 在看c书籍的时候,看到浅复制和深复制时,说到成员为指针的时候,会出异常。但是其实没有更多的感想,但是联想到上次考试指针没分配空间导致程序异常的情况&#xf…

提示:关于指针

文章目录

  • 前言
  • 一、指针的使用
  • 总结


前言

在看c++书籍的时候,看到浅复制和深复制时,说到成员为指针的时候,会出异常。但是其实没有更多的感想,但是联想到上次考试指针没分配空间导致程序异常的情况,所以现在再验证一下。


提示:以下是本篇文章正文内容,下面案例可供参考

一、指针的使用

以下是验证代码。

int main()
{//这边是异常的,因为没有给指针分配空间,这个上次考试的时候,也遇到了,不过通过调试发现了改了。当时真是醍醐灌顶,切记。char *p = NULL;char str[] = "hello";memcpy(p, str, strlen(str));printf("%s",p);//这边是异常的,因为没有给指针分配空间int *p2 = NULL;int data = 12;*p2 = data;printf("%d",*p2);//打印12//这个是正常的,跟预想的不一样。int *p3 = NULL;int data3 = 12;p3 = &data3;      //这边p指向了data的数据空间   p也就是被分配了空间printf("第一次打印p3:%d\n",*p3);int dataTest = 22;*p3 = dataTest;printf("第二次打印p3:%d\n",*p3);printf("打印data3:%d\n",data3);       //这里注意data3的值也被改了return 0;
}

感想:其实里面涉及到一个问题,就是空指针不能解引用。

另外空指针可以被另一个指针赋值,即指针指向另一个内存空间。

为了深入了解一下指针的使用百度了一些资料如下

指针与内存
在C++中,一个指针必须在被分配内存之后,才能进行直接赋值的操作,如果没有进行内存的分配,直接对指针进行赋值,是会编译错误的,例如:

int *p=123;   //这样是不可取的

我们平时常用的分配内存方式是分配【栈内存】,例如:

int k=123;
int *p=&k;  *p=345;
cout<<k;

因为123被放入了一个变量k中,系统为变量k分配了内存,指针p指向一个有内存空间的地址之后,就可以直接进行赋值了.

动态分配内存:
在系统中除了分配【栈内存】的方式外,还可以分配【堆内存】,分配方式如下:

int *p=NULL;
p=new int;                         //分配堆内存
*p=123;                            //分配了内存之后,就可以直接进行赋值操作了

关于指针赋值给指针

在C语言中,可以使用指针赋值运算符(=)将一个指针的值赋给另一个指针。指针之间的赋值实际上是将一个指针变量的值(即内存地址)赋给另一个指针变量。例如,假设有两个指针变量ptr1和ptr2,可以通过以下方式将ptr1的值赋给ptr2:```cptr2 = ptr1;```此时,ptr2将指向与ptr1相同的内存地址。需要注意的是,指针之间的赋值只是将内存地址赋给了另一个指针变量,而不是复制指针指向的内容。因此,修改其中一个指针指向的内存中的值也会影响另一个指针。```cint a = 10;int* ptr1 = &a;int* ptr2;ptr2 = ptr1; // 将ptr1的值赋给ptr2*ptr2 = 20; // 修改ptr2指向的内存中的值printf("%d", *ptr1); // 输出20,因为ptr1和ptr2都指向同一块内存```

欢迎补充。


总结

所以,根据以上验证,得出一个结论,就是浅拷贝的主要问题就是导致两个指针指向同一块内存,存在潜在的风险!

http://www.yayakq.cn/news/72261/

相关文章:

  • 怎么建立网站推广计算机应用技术网站开发基础知识
  • 京东商城网站建设目标营销战略咨询公司
  • 容县网站建设网站推广的一般方式
  • 网站建设和备案响应式mvc企业网站源码
  • 深圳极速网站建设推荐广州网站推广方案
  • 福州营销网站建设技术湘潭学校网站建设 精诚磐石网络
  • 平顶山市建设局网站如何做网站解析
  • 播放器网站怎么做过界女主个人做网站的
  • wordpress 自助建站系统 网站开发工程师
  • 中山网站建设工具猫域名备案需要哪些材料
  • 个人网站模板怎么做免费制作网站用什么做
  • 宁波市网站制作wordpress如何放入域名
  • 贵州建设厅考试网站安全员为什么有的网页打不开怎么解决
  • 上海网站建设中心最新域名查询网
  • 个人信用信息服务平台专业seo优化外包
  • 北海网站设计如何创建微信小程序商店
  • 建平县网站建设直播app开发公司排名
  • 南宁网站推广工具ui设计师可以做到多少岁
  • 手机网站下拉刷新四川住房和城乡建设厅网站题库
  • 网站建设开标书给单位做网站需要多少钱
  • 上海企炬做的网站企业网站导航优化
  • 让网站对搜索引擎友好免费制作图片带字 手机软件
  • 厂字形网页布局网站wordpress 情侣
  • 本地建站discuz纯手工建网站
  • 广东品牌网站建设网站建设销售专业术语
  • 企业网站管理的含义网架加工厂有招工的吗
  • 网站内链接分析苏州做网站
  • 个人两字印章在线制作网站东莞市企业招聘信息网
  • 北京住房和建设部网站首页临沂网站案例
  • 网站空间服务器续费百度推广个人怎么开户