仅通过给定数组计算数组和,而不传递它的长度

时间:2018-02-19 21:26:53

标签: c++ arrays

我需要计算数组和,但属性必须只是这个特定的数组。

bool solution(int arr[]) {
    int counter = 0;
    int len = sizeof(arr) / sizeof(arr[0]);
    std::cout << len << std::endl;
    for (int i=0; i < len; i++){
        counter += arr[i];
    }
    if (counter == 21)
        return true;

    return false;
}

它不起作用,我需要从外面传递一个数组长度。 如何在不将数组长度作为属性传递的情况下达到此目的?

1 个答案:

答案 0 :(得分:2)

  

如何在不将数组长度作为属性传递的情况下达到此目的?

除非您的数组包含标记有效数字结尾的标记值,否则您无法使用。

如果您可以选择,请使用std::vector。然后,大小信息随之而来。