我在将数组结构传递给函数进行处理时遇到问题。
我想我需要将数组的地址传递给函数,但是遇到了多个编译器错误,并且没有组合可以尝试。
然后该函数需要将一个值返回给一个新的结构成员。
这是我最好的镜头!
//-----------------
void Function(struct MyStruct* ptr);
//------------------
int main(){
MyStruct array[MAX];
for (int i=0; i<MAX; i++)
{
File>>array[i].V1;
File>>array[i].V2;
File>>array[i].V3;
File>>array[i].V4;
MyStruct* ptr = &array[i];
array[i].V5 = Function(ptr);
}
}
//-----------------------
void Function(struct MyStruct* ptr)
{
// do something with the struct, how to I access each element in here?
}
谢谢!
最佳答案
Function
有一个void
类型,这就是为什么您不能返回任何东西的原因。您应该让它返回 V5
的类型。
此外,要访问 ptr
的元素,请使用箭头符号:
ptr->V5
关于c++ - 基本 C++ 函数指针和结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8980764/