c++ - 基本 C++ 函数指针和结构

标签 c++ arrays function pointers struct

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

我想我需要将数组的地址传递给函数,但是遇到了多个编译器错误,并且没有组合可以尝试。

然后该函数需要将一个值返回给一个新的结构成员。

这是我最好的镜头!

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

  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/

相关文章:

c++ - 传递参数、列表和复制构造函数 C++

arrays - 将数组数组转换为 JSON

function - 什么是异地返回?

php - mb_substr 不能在 PHP 5.2.6 上使用

r - 如何查看功能的源代码?

c++ - 我想在程序启动时使用 Qt 打开并读取文本文件

c++ - 铿锵虫?命名空间模板类的 friend

PHP对象像数组

javascript - 无法从 javascript 中的原型(prototype)访问构造函数的值?

php - 相同的字符串加盐代码给出不同的结果