Chinaunix首页 | 论坛 | 博客
  • 博客访问: 38883
  • 博文数量: 16
  • 博客积分: 640
  • 博客等级: 上士
  • 技术积分: 180
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-16 14:43
文章分类

全部博文(16)

文章存档

2011年(1)

2009年(2)

2008年(13)

我的朋友
最近访客

分类: C/C++

2008-04-16 15:14:10

1形式参数数组
如果设计意图是函数不改变数组的内容,那么可以在函数原型和定义的形式参量声明中使用关键字const。需要理解的是这样使用const并不要求原始数组是固定不变的;这只是说明函数在处理数组时,应该可阻止函数修改调用函数中的数据。总之,如果函数想修改数组,那么在声明数组参量时就不要使用const;如果函数不需要修改数组,那么在声明数组参量时最好使用const.
2关于指针赋值和const有一些规则需要注意。首先,将常量或非常量数据的地址赋给指向常量的指针是合法的:
double rates[5]={88.99,100.12,59.45,183.11,340.5};
const double locked[4] = {0.08,0.075,0.0725,0.07};
const double *pc =rates; //合法
pc = locked; //合法
pc = &rates[3]; //合法
然而,只有非常量数据的地址才可以赋给普通的指针:
double rates[5]={88.99,100.12,59.45,183.11,340.5};
const double locked[4] = {0.08,0.075,0.0725,0.07};
double *pnc =rates; //合法
pnc = locked; //非法
pnc = &rates[3]; //合法
这样的规则是合理的。否则,你就可以使用指针来修改被认为是常量的数据。
3puts()参数中的字符数组必须有个'\0',否则不知道到什么地方结束!
阅读(398) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~