数组作为函数参数的注意点2

来源:互联网 发布:吉他收费软件 编辑:程序博客网 时间:2024/06/06 18:42
////  main.c//  C语言学习#include <stdio.h>//声明一个函数void printArray(int values[5]);int main(int argc, const char * argv[]) {       //定义一个数组    int nums[5] = {1,3,5,7,9};        //把数组传递给函数    printArray(nums); //结果只打印出:1和3            return 0;}//实现该函数//注意:如果数组作为函数的形参,那么在函数中就不能通过数组名计算数组的元素个数//因为系统会自动将数组形参转换为指针,指针占用8个字节void printArray(int values[5]){    //1.动态计算元素个数    //其本质是: 8字节 / 4字节    int length = sizeof(values) / sizeof(values[0]); //结果发现永远都只有2个元素        //2.遍历数组    for (int i=0; i<length; i++) {        printf("%i\n",values[i]);    }}

0 0