关于C++中sizeof()的问题
doublews[3]={10000.0,2000.0,30000.0};double*pw=ws;为什么sizeof(ws)得到的结果是24,sizeof(pw)得到的...
double ws[3] = {10000.0,2000.0,30000.0};
double * pw = ws;
为什么sizeof(ws)得到的结果是24,sizeof(pw)得到的结果是4 展开
double * pw = ws;
为什么sizeof(ws)得到的结果是24,sizeof(pw)得到的结果是4 展开
网易云信
2023-12-06 广告
2023-12-06 广告
UIkit是一套轻量级、模块化且易于使用的开源UI组件库,由YOOtheme团队开发。它提供了丰富的界面元素,包括按钮、表单、表格、对话框、滑块、下拉菜单、选项卡等等,适用于各种类型的网站和应用程序。UIkit还支持响应式设计,可以根据不同...
点击进入详情页
本回答由网易云信提供
展开全部
以32位机为例
sizeof(double) = 8
ws[3]为包含3个double类型的元素的数组 所以是 sizeof(double)*3 = 24
sizeof(double *) = 4
pw 为double *型的指针,存储的是ws数组的首地址 所以sizeof(pw)=4
请注意学习指针那块。
sizeof(double) = 8
ws[3]为包含3个double类型的元素的数组 所以是 sizeof(double)*3 = 24
sizeof(double *) = 4
pw 为double *型的指针,存储的是ws数组的首地址 所以sizeof(pw)=4
请注意学习指针那块。
追问
什么是32位机呢? 系统? 我的系统是64位的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
double * 是指针,在你的机器上指针的大小是4字节。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一个是数组,一个是指针地址
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
因为pw是一个指针,所有的指针的长度都是4,而sizeof(ws),指的是ws[3]所占的所有空间
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询