Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 基本C++;函数指针&;结构_C++_Arrays_Function_Pointers_Struct - Fatal编程技术网

C++ 基本C++;函数指针&;结构

C++ 基本C++;函数指针&;结构,c++,arrays,function,pointers,struct,C++,Arrays,Function,Pointers,Struct,我在将数组结构传递到函数进行处理时遇到问题 我认为我需要将数组的地址传递给函数,但是,我遇到了多个编译器错误,并且正在尝试使用的组合已经用完 然后,该函数需要向新的结构成员返回一个值 这是我最好的机会 //----------------- void Function(struct MyStruct* ptr); //------------------ int main(){ MyStruct array[MAX]; for (int i=0; i<MAX;

我在将数组结构传递到函数进行处理时遇到问题

我认为我需要将数组的地址传递给函数,但是,我遇到了多个编译器错误,并且正在尝试使用的组合已经用完

然后,该函数需要向新的结构成员返回一个值

这是我最好的机会

  //-----------------

  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?
  }
//-----------------
void函数(struct MyStruct*ptr);
//------------------
int main(){
MyStruct数组[MAX];
对于(int i=0;i>array[i].V1;
文件>>数组[i].V2;
文件>>数组[i].V3;
文件>>数组[i].V4;
MyStruct*ptr=&array[i];
数组[i].V5=函数(ptr);
}
}
//-----------------------
void函数(struct MyStruct*ptr)
{
//对结构做些什么,我如何访问这里的每个元素?
}

谢谢!

对于
函数
,您有一个
void
类型,这就是为什么您不能返回任何内容。您应该让它返回
V5
的类型

此外,要访问
ptr
的元素,请使用箭头符号:

ptr->V5

对于
函数
,您有一个
void
类型,这就是您不能返回任何内容的原因。您应该让它返回
V5
的类型

此外,要访问
ptr
的元素,请使用箭头符号:

ptr->V5

你的
main
看起来不错。别忘了给
函数一个有用的返回类型,它将匹配
数组[i].V5
,在它里面,你可以通过
ptr->V1
这样的指针访问
MyStruct
的成员,
ptr->V2
等等。你的
main
看起来不错。别忘了给
函数一个有用的返回类型,它将匹配
数组[i].V5
,您可以通过
ptr->V1
ptr->V2
等指针访问
MyStruct
中的成员以获取回复。在我的函数中:ptr->V5=1.0;给出错误C2227:“->V5”的左侧必须指向class/struct/union/generic type。这将节省我必须定义返回类型的时间,即t我想这样做。谢谢!@user1055774您如何定义
MyStruct
?您应该更新您的问题,以显示完整的代码。对不起,是我。我分配了一个类型不正确的值。代码正在工作,有时您只需要有人指出显而易见的问题。谢谢!谢谢您的回答。在我的函数中:ptr->V5=1.0;给出错误C2227:“->V5”的左边必须指向class/struct/union/generic type。这将节省我必须定义返回类型的时间,这正是我想要做的。谢谢!@user1055774您如何定义
MyStruct
?您应该更新您的问题以显示完整的代码。对不起,是我。我分配了一个inco的值正确的类型。代码正在运行,有时你只需要有人指出明显的。谢谢!