gjfyyds 发表于 2021-11-29 19:18:46

const的作用

const使程序只能从数组中检索值,不能把新值写入数组。
为什么程序会把数组中的数据修改?
const int days={31,28,31};这个数组是我自己定义的,如果没有const,程序会使这个数组里面的值会改变吗?

番杰 发表于 2021-11-29 19:31:54

好像是会的;
这种情况下,days = 0;是不能赋值的;会提示days不是一个左值;

但是通过一个非常量指针指向这个数组的地址,通过这个指针就可以把这地址上的数据给改掉;
从而也会使数组中数值改掉。

jackz007 发表于 2021-11-29 19:51:23

      只要 days 数组不出现在等号的左边,编译程序就不会干涉你。

jhq999 发表于 2021-11-29 19:54:30

本帖最后由 jhq999 于 2021-11-29 20:03 编辑

番杰 发表于 2021-11-29 19:31
好像是会的;
这种情况下,days = 0;是不能赋值的;会提示days不是一个左值;



我以为const修饰是这个数组指针而不是这个指针所指向的内容

老黄牛i 发表于 2022-2-11 00:15:46

{:10_257:}
页: [1]
查看完整版本: const的作用