首页 > 解决方案 > 创建传递值的数组大小会产生垃圾值

问题描述

int higher_element = arr[0];

for(int i = 0; i < length; i++)
    if(arr[i] > higher_element)
        higher_element = arr[i];

cout << "Higher element in an unsorted array :" << higher_element << endl;

int Hash[higher_element] = {0};

在这里,我想创建一个新的大小数组higher_element并将其初始化为0但没有创建数组,只创建了一个垃圾值。

的输出higher element12

标签: c++arrays

解决方案


由于您使用的是 C++,我建议您使用vector. 这是std::vector您的问题的解决方案。

std::vector<int> Hash(higher_element);

向量自动初始化为 0。但为了您的澄清,

std::vector<int> Hash(higher_element,0);

推荐阅读