函数中传递的变量引用不递增

问题描述 投票:-2回答:1

作为一名C ++初学者,我被引入指针,我想知道为什么以下程序无法正常工作:

#include "pch.h"
#include <iostream>

void test(int* variable)
{
    variable++;
}


int main()
{

    int someNumber = 5;

    test(&someNumber);

    std::cout << someNumber;

    return 0;
}

该程序打印5,从我的理解,它应该打印6.任何人都可以帮助我吗?

c++ function pointers parameters
1个回答
2
投票

以下是使用两种不同方法完成任务的解决方案。

void test(int* variable)
{
    (*variable)++;
}
void test(int& variable)
{
    variable++;
}

每个解决方案都将完成您的任务。要调用第二个函数,请使用test(variable)

© www.soinside.com 2019 - 2024. All rights reserved.