CodeSky 代码之空

随手记录自己的学习过程

C 保护数组内容,说说const

2014-03-27 01:13分类: C评论: 0

因为有的时候我们会手贱在函数中传参导致修改数组值,所以就产生了这个东西,特点其实是让编译器报错,告诉你这里不应该被改变。 如:int sum(const int ar[], int n)

如果const int days[MONTHS] = {31, 28, 31},则数组内容就不能改变了。

如果:

1double rates[5] = {88.9, 100.12, 59.45, 183.11, 340.5};
2const double * pd = rates;
3

则不能用pc来修改他所指向的数值,可是我们还是能通过rates[0]来修改,因为rates并不是常量。

如果我们换个写法double * const pc = rates那么就可以修改数据,却不能移动指针。

如果将上面两者结合使用,就相当于用了强力胶,怎么都动不了了:const double * const pc = rates

评论 (0)