爱问知识人 爱问教育 医院库

为什么函数声明是数组?

首页

为什么函数声明是数组?

为什么函数声明是数组,函数却变成了指针

提交回答

全部答案

    2018-04-08 06:49:44
  • 这是一种便利。 
    由于数组会马上蜕变为指针, 数组事实上从来没有传入过函数。允许指针参数声明为数组只不过是为让它看起来好像传入了数组, 因为该参数可能在函数内当作数组使用。特别地, 任何声明 ``看起来象" 数组的参数, 例如 
        void f(char a[])
        { ... }
    在编译器里都被当作指针来处理, 因为在传入数组的时候,那正是函数接收到的. 
        void f(char *a)
        { ... }
    这种转换仅限于函数形参的声明, 别的地方并不适用。如果这种转换令你困惑, 请避免它; 很多程序员得出结论, 让形参声明 ``看上去象" 调用或函数内的用法所带来的困惑远远大于它所提供的方便。

    陈***

    2018-04-08 06:49:44

类似问题

换一换
  • 数学 相关知识

  • 教育培训
  • 教育科学
  • 教育考试

相关推荐

正在加载...
最新资料 推荐信息 热门专题 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):