问题遇到的现象和发生背景
写了一个找一组数字中最小值的代码
该程序输入格式为:
一组数字个数
数字1 数字2 数字3...
问题相关代码,请勿粘贴截图
#include
using namespace std;
void search(int* p, int n, int* pmin, int* pminindex);
int main()
{
int minValue, minInd,n, *pminindex, *pmin;
pmin = &minValue;
pminindex = &minInd;
cin >> n;
search(0,n,0,0);
cout << minValue << endl << minInd << endl;
}
void search(int* p, int n, int* pmin, int* pminindex)
{
p = new int;
for (int i = 0; i < n; i++)
{
cin >> p[i];
}
*pmin = p[0];//运行后提示这里发生异常
for (int i = 0; i < n; i++)
if (p[i] < *pmin)
{
*pmin = p[i];
*pminindex = i + 1;
}
delete[]p;
}
运行结果及报错内容
引发了异常: 写入访问权限冲突。
pmin 是 nullptr。
我的解答思路和尝试过的方法
不知道,真的不懂
我想要达到的结果
运行成功
这是我第一次在这里发问题,对这个社区的规则不是很懂,希望大佬们能指出来,谢谢!