C++指针形参问题 input函数里为什么要多定义三个指针存放stu sex age才能正常输入?

#include
using namespace std;
int main()
{
string stu[20],sex[20],age[20];
void input(string*,string*,string*);
void output(string*,string*,string*);
input(stu,sex,age);
output(stu,sex,age);
return 0;
}
void input(stringstu,stringsex,stringage)
{
string
p,*q,*r;
cout<<"Please input 5 students' data"<
for(p=stu,q=sex,r=age;p<(stu+5);p++,q++,r++)
{cin>>p>>q>>r;}
}
void output(string
stu,string
sex,string
age)
{
cout<<"The five student information is as follows:"<
for(int i=0;i<5;i++)
{cout<
}

简单梳理了一下,有很多细节我也没细细关注,你可以试着吧string数组换成int二维数组,然后理解相关知识点结合理解string的知识点

你说的是指针访问数组的方式,也可以用数组下标的,两种方式都可以,你可以试试

img

它使用了p++,指针方式进行数组下标控制。对应output里用stu[i]下标的方式进行控制。