梦⁠回⁣从前 2022-06-17 00:54 采纳率: 25%
浏览 47

C++程序,比较基础、简单

class Tuple
{

public:
    int * arr;
    Tuple(){
        int a[10];
        arr = a;
        for (int i = 0; i < 10; ++i) {
            a[i] = 0;
        }
    }
    void input(int i, int v){
        arr[i] = v;
    }
    void output(int i){
        cout << "arr[" << i << "] = " << arr[i] << endl;
    }
};
int main(){
    Tuple t;
    t.input(5,10);
    t.output(5);
    return 0;
}

这个是给arr[i]赋值(input和ouput)
这里面有一个问题

 void output(int i){
        cout << "arr[" << i << "] = " << arr[i] << endl;
    }
这一段如果换成
void output(int i){
        cout << "arr[" << "] = " << arr[i] << endl;
 }
运行结果会显示被函数改变的值10
为什么????
  • 写回答

3条回答 默认 最新

  • celljin 2022-06-17 14:42
    关注

    222

    评论

报告相同问题?

问题事件

  • 创建了问题 6月17日