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

成都市建设局官方网站长治企业网站建设

成都市建设局官方网站,长治企业网站建设,做多语言网站教程,百度 官网面试题9#xff1a;什么是内存地址 内存地址是指计算机内存中存储变量或对象的地址。内存空间大小就是寻址能力#xff0c;即能访问到多少个地址#xff0c;比如 32 位机器内存空间大小就是 2^32 4294967296#xff0c;也就是 4 GB 。每个变量或对象在内存中都有一个唯一…面试题9什么是内存地址 内存地址是指计算机内存中存储变量或对象的地址。内存空间大小就是寻址能力即能访问到多少个地址比如 32 位机器内存空间大小就是 2^32 4294967296也就是 4 GB 。每个变量或对象在内存中都有一个唯一的地址通过该地址可以访问和操作该变量或对象。注意一 个内存地址对应一个字节以 int 类型的变量为例其占据 4 个内存地址其中首个内存地址就是这个变量的地址。 #include iostreamint main() {int vals[4]{};printf(val1 address %p\n, vals[0]);printf(val2 address %p\n, vals[1]);printf(val3 address %p\n, vals[2]);printf(val4 address %p\n, vals[3]);return 0; }上面代码的输出为 val1 address 0000005420F6F978 val2 address 0000005420F6F97C val3 address 0000005420F6F980 val4 address 0000005420F6F984为了能够说明 1 个 int 类型的变量占据 4 个内存地址我们在上面的代码中使用占据连续内存的数组来做测试由这个输出可以看出数组 vals 的第一个元素所占据的内存地址由 0000005420F6F978 到 0000005420F6F97B 再往下的一个地址就是第二个元素的首地址 0000005420F6F97C刚好是 4 个内存地址其首个内存地址 0000005420F6F978 就是这个数组 vals 的第一个元素的地址同时也是这个数组变量 vals 的地址。 面试题10常量指针与指针常量的区别 常量指针const pointer和指针常量pointer to const是两个不同的概念常量指针指的是其指向变量的值不可改变但是指针本身是可以改变的可以指向其他变量指针常量指的是指针本身是常量其不可以再指向其他变量。 常量指针的样例代码 const int val1 1; int *ptr1 val1; //错误必须使用常量指针 const int *ptr1 val1; //OK *ptr1 2; 指针常量的样例代码 int val1 1; int val2 2; int const *ptr1 val1; //OK *ptr1 val2; //错误指针本身是常量其不可以再指向其他变量。面试题11野指针出现的原因 野指针出现的原因主要有以下三种 1指针变量未初始化。局部指针变量的默认值是一个随机值如果此时访问该指针则会引起程序崩溃。所以指针变量在创建的同时应当被初始化要么将指针设置为 nullptr 要么让它指向合法的内存 new 出来的对象或者现有的一个对象。 2释放内存后没有将指针设置为 nullptr 。不管是 free 还是 delete 在释放内存时只是把指针所指的内存给释放掉了但此时指针的值依然是之前内存空间的首地址。此时访问该指针则会引起程序崩溃。 3指针操作超越变量作用范围。栈内存在函数结束时会被释放如果将其内存地址通过指针返回给调用者此时再访问则会引起程序崩溃。 面试题12使用 nullptr 的好处是什么 nullptr 关键字是在 C11 标准中引入的用于表示空指针。在 C11 及以后的版本中nullptr 替代了 C98/03 中的 NULL 或 0 作为空指针的表示。该关键字可以避免函数重载问题如下为样例代码 void overLoadFunc(int* val); void overLoadFunc(int val);int main() {overLoadFunc( NULL ); // 期待调用 overLoadFunc(int* val); 但实际调用却是 overLoadFunc(int val); }上面代码中的 overLoadFunc( NULL ); 实际调用的是 overLoadFunc(int val); 。其原因是 NULL 本身就是整数 0 因此进入了整型参数的重载函数。 面试题13什么是指针的指针 指针的指针是一个指向指针的指针。指针可以指向所有数据类型的变量基本类型、结构体类型、类类型等而指针自身也是一种变量所以指针自然也可以指向指针。指针的指针通常用于处理二维数组、动态分配的二维数组或处理指针数组等。 如下样例可以帮助理解指针的指针 #include iostreamint main() {int val1 1;int *ptr1 val1;int **ptr2 ptr1;printf(ptr1 address %p\n, ptr1);printf(ptr1 address %p\n, (*ptr2));printf(ptr2 value %p\n, ptr2);return 0; }上面代码的输出为 ptr1 address 000000C4A839F758 ptr1 address 000000C4A839F758 ptr2 value 000000C4A839F758由结果可以看出指向指针的指针变量 ptr2 保存了指针变量 ptr1的地址 000000C4A839F758 。 其中代码第 10 行 int **ptr2 ptr1; 定义了一个指向指针的指针这里用了两个星号*其保存的值就是指针变量 ptr1的地址。 第 11、 12、 13 行代码尤为重要 第 11 行代码 printf(ptr1 address %p\n, ptr1); 其中的 ptr1 是对指针变量 ptr1 做取地址操作。 第 12 行代码 printf(ptr1 address %p\n, (*ptr2)); 其中的 (*ptr2) 是对指针变量 ptr2 做解引用操作再对其做取地址操作相当于直接对指针变量 ptr1 做取地址操作。 第 13 行代码 printf(ptr2 value %p\n, ptr2); 对指向指针的指针取值直接用其变量名即可。 使用指针的指针来处理二维数组时其对应内存的创建以及释放都需要使用循环 1创建二维数组 int** vals new int*[2]; for (size_t i 0; i 2; i) {vals[i] new int[3](); }2释放二维数组的内存 int** vals new int*[2]; for (size_t i 0; i 2; i) {vals[i] new int[3](); }for (size_t i 0; i 2; i) {delete[] vals[i]; //注意 delete 一定要加上中括号 [] }这里尤其注意 delete[] 的使用。
文章转载自:
http://www.morning.ftsmg.com.gov.cn.ftsmg.com
http://www.morning.rdlong.com.gov.cn.rdlong.com
http://www.morning.nnwpz.cn.gov.cn.nnwpz.cn
http://www.morning.sgwr.cn.gov.cn.sgwr.cn
http://www.morning.brlgf.cn.gov.cn.brlgf.cn
http://www.morning.pmsl.cn.gov.cn.pmsl.cn
http://www.morning.gbgdm.cn.gov.cn.gbgdm.cn
http://www.morning.lkthj.cn.gov.cn.lkthj.cn
http://www.morning.lflnb.cn.gov.cn.lflnb.cn
http://www.morning.nfmtl.cn.gov.cn.nfmtl.cn
http://www.morning.rqfkh.cn.gov.cn.rqfkh.cn
http://www.morning.pkmw.cn.gov.cn.pkmw.cn
http://www.morning.qnbck.cn.gov.cn.qnbck.cn
http://www.morning.ysllp.cn.gov.cn.ysllp.cn
http://www.morning.lchtb.cn.gov.cn.lchtb.cn
http://www.morning.fncgw.cn.gov.cn.fncgw.cn
http://www.morning.wwxg.cn.gov.cn.wwxg.cn
http://www.morning.ryxgk.cn.gov.cn.ryxgk.cn
http://www.morning.kxnnh.cn.gov.cn.kxnnh.cn
http://www.morning.qcymf.cn.gov.cn.qcymf.cn
http://www.morning.mpscg.cn.gov.cn.mpscg.cn
http://www.morning.wqbbc.cn.gov.cn.wqbbc.cn
http://www.morning.pprxs.cn.gov.cn.pprxs.cn
http://www.morning.stph.cn.gov.cn.stph.cn
http://www.morning.xkyfq.cn.gov.cn.xkyfq.cn
http://www.morning.wnzgm.cn.gov.cn.wnzgm.cn
http://www.morning.dyrzm.cn.gov.cn.dyrzm.cn
http://www.morning.wsjnr.cn.gov.cn.wsjnr.cn
http://www.morning.mbpzw.cn.gov.cn.mbpzw.cn
http://www.morning.dbdmr.cn.gov.cn.dbdmr.cn
http://www.morning.tmfhx.cn.gov.cn.tmfhx.cn
http://www.morning.tsflw.cn.gov.cn.tsflw.cn
http://www.morning.zylrk.cn.gov.cn.zylrk.cn
http://www.morning.myrmm.cn.gov.cn.myrmm.cn
http://www.morning.shinezoneserver.com.gov.cn.shinezoneserver.com
http://www.morning.qnkqk.cn.gov.cn.qnkqk.cn
http://www.morning.zczkm.cn.gov.cn.zczkm.cn
http://www.morning.jkzq.cn.gov.cn.jkzq.cn
http://www.morning.jjhrj.cn.gov.cn.jjhrj.cn
http://www.morning.rfldz.cn.gov.cn.rfldz.cn
http://www.morning.sdktr.com.gov.cn.sdktr.com
http://www.morning.qnypp.cn.gov.cn.qnypp.cn
http://www.morning.pnfwd.cn.gov.cn.pnfwd.cn
http://www.morning.hgsmz.cn.gov.cn.hgsmz.cn
http://www.morning.hrkth.cn.gov.cn.hrkth.cn
http://www.morning.ktntj.cn.gov.cn.ktntj.cn
http://www.morning.qrnbs.cn.gov.cn.qrnbs.cn
http://www.morning.wtbzt.cn.gov.cn.wtbzt.cn
http://www.morning.fyskq.cn.gov.cn.fyskq.cn
http://www.morning.bypfj.cn.gov.cn.bypfj.cn
http://www.morning.yfwygl.cn.gov.cn.yfwygl.cn
http://www.morning.mnclk.cn.gov.cn.mnclk.cn
http://www.morning.mygbt.cn.gov.cn.mygbt.cn
http://www.morning.gqddl.cn.gov.cn.gqddl.cn
http://www.morning.rrms.cn.gov.cn.rrms.cn
http://www.morning.hnhgb.cn.gov.cn.hnhgb.cn
http://www.morning.zhqfn.cn.gov.cn.zhqfn.cn
http://www.morning.njstzsh.com.gov.cn.njstzsh.com
http://www.morning.chmcq.cn.gov.cn.chmcq.cn
http://www.morning.dbfp.cn.gov.cn.dbfp.cn
http://www.morning.wyzby.cn.gov.cn.wyzby.cn
http://www.morning.swlwf.cn.gov.cn.swlwf.cn
http://www.morning.yqrfn.cn.gov.cn.yqrfn.cn
http://www.morning.bwttj.cn.gov.cn.bwttj.cn
http://www.morning.qggm.cn.gov.cn.qggm.cn
http://www.morning.jglqn.cn.gov.cn.jglqn.cn
http://www.morning.fbbpj.cn.gov.cn.fbbpj.cn
http://www.morning.ysnbq.cn.gov.cn.ysnbq.cn
http://www.morning.dtlqc.cn.gov.cn.dtlqc.cn
http://www.morning.hxpff.cn.gov.cn.hxpff.cn
http://www.morning.tmfm.cn.gov.cn.tmfm.cn
http://www.morning.hytr.cn.gov.cn.hytr.cn
http://www.morning.flqbg.cn.gov.cn.flqbg.cn
http://www.morning.wkhfg.cn.gov.cn.wkhfg.cn
http://www.morning.qrmyd.cn.gov.cn.qrmyd.cn
http://www.morning.tqjwx.cn.gov.cn.tqjwx.cn
http://www.morning.ymmjx.cn.gov.cn.ymmjx.cn
http://www.morning.vjdofuj.cn.gov.cn.vjdofuj.cn
http://www.morning.xrpwk.cn.gov.cn.xrpwk.cn
http://www.morning.mhxlb.cn.gov.cn.mhxlb.cn
http://www.tj-hxxt.cn/news/267589.html

相关文章:

  • 简述网站的设计流程app制作软件破解版
  • 网站分屏布局设计微网站搭建
  • 网站开发先写后端先写前端上海十大公关公司排名
  • 做网站排在前十名要多少钱济南华企立方 网站
  • 建设金融网站哪家好wordpress重复文章
  • 全国送花网站产品线上推广方式都有哪些
  • asp网站建设 文献网页设计软件dream
  • 东莞设计公司网站导航网站 cms
  • p2p网站建设要多少钱青县网站建设公司
  • 网站目录权限外贸订单
  • 哈尔滨企业自助建站系统网站改版301是什么意思
  • 营销型网站建设宣传语seo顾问招聘
  • 网站备案怎么找人备扁平化网页设计图片
  • 网站右下角代码wordpress主题 开发
  • 刚做优化的网站什么能更新个人网站模板html
  • 搜索引擎网站模板1122t
  • yy怎么一直在模板相关信息圆柱钢模板优势是什么?企业网站建设模板和定制化有什么区别呢?拼命加载中wordpress 多语言 方案
  • dede修改网站密码连接友谊
  • 悟空建站seo服务网络哪个公司便宜又好
  • 网站开发公司市场网站一键提交
  • 安卓上怎么做单机网站广东网站建设哪里有
  • 餐饮网站设计河池企业网站开发公司
  • 高端网站建设公司名字网站开发 项目章程
  • 烟台工程建设信息网站网站建设宀金手指花总十五
  • 一家做公司点评的网站如何给网站做地图
  • 沈阳网站制作公司和服务器岳阳市交通建设投资公司门户网站
  • 山东网站备案注意事项磁力天堂
  • 天津做网站建设校园网站建设的参考文献
  • 关键词挖掘网站ps软件官方下载
  • 网站空间费价格织梦网站默认密码忘记