每天都去711 2022-01-06 11:03 采纳率: 0%
浏览 126

c++ 结构体数组数据被覆盖,只显示最后一个数据

自己定义了一个结构体:

struct Cell
{
    double x;
    double y;
};

然后初始化100个这样的结构体A,每个结构体里想要存放n行2列的数据,但是最后输出的数据只有第n行的两个数据(可能是因为A[i]只能存储一行),前面的都被覆盖了,请问如何解决呢?

    Cell A[100];
    int j = 0;
    for (int i = 0; i < centroids.size()-1; i++)
    {
        if (abs(centroids[i].y - centroids[i + 1].y) < 4)
        {
            A[j].x = centroids[i].x;
            A[j].y = centroids[i].y;
        }
        else
        {
            A[j].x = centroids[i].x;
            A[j].y = centroids[i].y;
            j = j + 1;
        }
    }
    cout << A[1].x <<"  "<< A[1].y<< endl;

最后cout出来的只有A中第二个结构体最后一行的数据,不能显示第二个结构体里所有的内容

  • 写回答

2条回答 默认 最新

  • stone_wangzx 2022-01-06 11:34
    关注

    全部输出A数组中的数据需要循环输出
    把cout修改成

    
          for (int i=0; i<j; ++i)
          {
            cout << "index = " << i << A[i].x << "  " << A[i].y << endl;
        }
    
    
    评论

报告相同问题?

问题事件

  • 修改了问题 1月6日
  • 创建了问题 1月6日

悬赏问题

  • ¥15 远程访问linux主机超时
  • ¥15 odoo17存货管理优势于中国国内该行业传统ERP或MES的详细解读和举例
  • ¥15 CPU卡指令整合指令数据都在图片上
  • ¥15 火车票关联12306问题
  • ¥15 odoo17处理受托加工产品
  • ¥15 如何用MATLAB编码图三的积分
  • ¥15 圆孔衍射光强随孔径变化
  • ¥15 MacBook pro m3max上用vscode运行c语言没有反应
  • ¥15 ESP-PROG配置错误,ALL ONES
  • ¥15 结构功能耦合指标计算