君汐 2023-07-19 19:07 采纳率: 0%
浏览 9

指针和字符数组到底有什么区别

这几天我测试c++一些代码时发现这个现象

chat a[50];
chat *b = new char [50];
sizeof(a); \sizeof返回50,是数组大小
sizeof(b); \sizeof返回的是指针本身占用大小,而不是开辟的空间的大小

以前我学的是说字符数组a是一个指针,指向字符串,同样是指针,为什么返回大小不同,现在我却不懂了。
哪位大 佬可以解惑一下。

  • 写回答

2条回答 默认 最新

  • 爱编程的小芒果 2023-07-19 19:33
    关注

    *B是一个指针,你sizeof(B)它就会返回这个指针的长度
    而A是一个数组,返回的自然而然是数组的大小,就是你自己开的大小50

    评论

报告相同问题?

问题事件

  • 创建了问题 7月19日

悬赏问题

  • ¥15 新唐M451 DTMF检测和发送代码修改
  • ¥15 在国外文献网站里点击view pdf 加载异常缓慢甚至加载不出来。
  • ¥50 python批量提取发票的信息
  • ¥15 mysql安装,初始化数据库失败
  • ¥15 虚幻五引擎内容如何上传至网盘?
  • ¥15 使用mmpose库时出现了问题
  • ¥15 IRI2016模型matlab运行报错
  • ¥50 bat怎么设置电脑后台自动点击网页指定词运行脚本,输入指定网页链接,指定点击词,指定间隔时间,指定网页出现的词,指定网页出现词出现后后点击锁定,放在后台运行不影响前台鼠标工作
  • ¥20 20CrMnMo的高温变形抗力
  • ¥15 RTX3.6 5565驱动中断报错