请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

字符数组内存中是怎么存放的?

char a[10] = "b";
char ab[2] = "a";

这里我打印看到 无论哪里有值,有值得都在数据的最开始第0项,后面才是空,不应该是按照下标在内存中存储对应的值?图片描述

正在回答 回答被采纳积分+3

1回答

quickzhao 2020-05-10 22:26:18

你好好想想定义和赋值有什么区别。

0 回复 有任何疑惑可以回复我~
  • 定义是声明一块空间 但是里面的内容未初始化,赋值是给这块空间上设置值。
    
    我知道原因,开始以为这个是给字符数组 的第x项赋值,后来发现这个其实是 c++里面定义 x长度的字符串。所以赋值的内容在内存在开始就没毛病了。
    回复 有任何疑惑可以回复我~ 2020-05-10 22:43:30
  • 不是,这里的定义包涵了你说的定义和赋值。
    回复 有任何疑惑可以回复我~ 2020-05-10 22:48:18
  • 提问者 我真的是太难了哦 回复 quickzhao #3
    定义是我 上述理解的 定义和赋值
    那赋值是指 使用赋值运算符的操作?
    回复 有任何疑惑可以回复我~ 2020-05-14 10:50:17
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信