初学者C++:如何将列表作为函数参数传递?

Beginner's C++: How do I pass a list as a function parameter?

本文关键字:函数 参数传递 列表 C++ 初学者      更新时间:2023-10-16

我正在尝试为入门级C++函数制作用户生成的搜索功能。该函数应采用一个列表和三个整数,但它无法识别该列表。我可以传递 int[],但是每当我给它一个名称,例如"int[] list"时,它都会抛弃程序。

编辑:这是我得到的警告:预期为"("。然后它遍历变量参数名称并说"第一个未识别","最后一个未识别",依此类推。做了一些忍者编辑以在此处显示更多代码。不好意思!

我觉得这对C++用户来说是非常基本的,但我不明白!我还不想在这个程序中使用指针。

int binSearch(int[] first, int target, int first, int last) {
    int middle = (first + last) / 2; 
    cout << "Entering binSearch: list[first]=" + list[first] +
        ", list[last]=" + list[last] + ", "; 
    cout << "list[middle]=" + list[middle];
}
int main() {
     int list[10]; 
    // creating sorted array 
    cout << "The list is "; 
    for (int i = 0; i < 10; i++) {
        list[i] = 2 * i + 1; 
        cout << list[i] + " "; 
    }
    cout << endl; 
    // prompt user to enter key 
    int key; 
    cout << "Enter a key: "; 
    cin >> key; 
    int index = binSearch(list, 10, key, 0, 10 - 1); 
} 

在C++中,数组在变量名后面用括号声明:

int binSearch(int list[], int target, int first, int last)

请注意,我还将第一个参数从 first 更改为 list