const的作用
const使程序只能从数组中检索值,不能把新值写入数组。为什么程序会把数组中的数据修改?
const int days={31,28,31};这个数组是我自己定义的,如果没有const,程序会使这个数组里面的值会改变吗? 好像是会的;
这种情况下,days = 0;是不能赋值的;会提示days不是一个左值;
但是通过一个非常量指针指向这个数组的地址,通过这个指针就可以把这地址上的数据给改掉;
从而也会使数组中数值改掉。 只要 days 数组不出现在等号的左边,编译程序就不会干涉你。 本帖最后由 jhq999 于 2021-11-29 20:03 编辑
番杰 发表于 2021-11-29 19:31
好像是会的;
这种情况下,days = 0;是不能赋值的;会提示days不是一个左值;
我以为const修饰是这个数组指针而不是这个指针所指向的内容 {:10_257:}
页:
[1]