数组知识点补充

阅读量: 453 编辑

主函数外部定义了一个全局或静态存储期的整数数组 int myArray[5];,那么数组的元素将被初始化为零。

int arr[5];
int main() {
  int length = sizeof(arr) / sizeof(arr[0]);
  for (int i = 0; i < length; ++i) {
    cout << arr[i] << endl;
  }
  return 0;
}

如果你在 main 函数内部定义这个数组,元素的初始值将是不确定的,可能是随机值。

int main() {
  int arr[5];//内部定义,值是随机的,最好初始化
  int length = sizeof(arr) / sizeof(arr[0]);
  for (int i = 0; i < length; ++i) {
    cout << arr[i] << endl;
  }
  return 0;
}

C/C++中一个函数接受一个数组作为参数,那么数组将会退化为指针,所以不能在 printArray 中使用 sizeof 。参考指针部分知识点。

void printArray(int arr[], int size) {
    for (int i = 0; i < size; i++) {
        // 对数组元素进行操作
        cout << arr[i] << " ";
    }
}

int main() {
    int myArray[] = {1, 2, 3, 4, 5};
    int size = sizeof(myArray) / sizeof(myArray[0]);
    printArray(myArray, size);
    return 0;
}

爱码岛编程公众号
试卷资料
爱码岛编程小程序
在线刷题
苏ICP备13052010号
©2023 南京匠成信息科技有限公司