c - 在 for 循环中覆盖值

标签 c for-loop

我有以下代码,其中 book 是一个结构数组和 alpha, beta 。 .是结构的成员:

 for(i = 0; i < sizeof(book)/sizeof(book[0]); ++i) {
    n    = book[i].alpha;
    m    = book[i].beta;
    gnm  = book[i].gamma;
    hnm  = book[i].delta;
    dgnm = book[i].epsilon;
    dhnm = book[i].zeta;        
}

我想用它来将结构数组中的数据存储到变量 n、m、.. 等中。现在这段代码只将最后一行数据存储到每个变量中。我如何更改此代码以便每次都不会覆盖该值?例如,不只是存储 12,它应该是 123456789101112。

代码如下:

int main()
{ 
int i,n,m,floot;
int aplha[90],beta[90], buf_size = 3500, offset = 0;
float gnm,hnm,dgnm,dhnm,gamma[90],delta[90],epsilon[90],zeta[90];
static char  c_str[90]; 

    struct wmm
       {
        int   alpha;
        int   beta;
        float gamma;
        float delta;
        float epsilon;
        float zeta;
       }book[]= {
  {1, 0, -29496.6,       0.0,       11.6,       0.0},
  {1, 1,  -1586.3,    4944.4,       16.5,     -25.9},
  {2, 0,  -2396.6,       0.0,      -12.1,       0.0},
  {2, 1,   3026.1,   -2707.7,       -4.4,     -22.5},
  {2, 2,   1668.6,    -576.1,        1.9,     -11.8},

[...50 or so similar lines omitted...]

 {12, 11,    -0.8,      -0.2,       -0.1,        0.0},
 {12, 12,     0.0,       0.9,        0.1,        0.0}
 };

最佳答案

您需要以追加数据的方式存储它们。这可以通过某种字符串对象或数组来完成。我不确定你这里的数据类型是什么,所以我不能给出一个确切的例子,但我的想法是避免像那样重复赋值,因为这只会在循环的每次迭代中覆盖以前的值

关于c - 在 for 循环中覆盖值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6188930/

相关文章:

c - 线程: Passing struct to function

c - 在指针索引处存储值?

Python 属性错误 : 'dict' object has no attribute 'append'

Java- 为什么使用 i,j

c - Open MP Schedules - 寻找循环的最佳参数

matlab - 如何在matlab中按顺序重命名值?

更改位数组中的值

c++ - 我可以访问 Unity 背景元素吗?

c - 如何通过名称获取 Windows 版本(对于 future 的 Windows 版本)?

c++ - 可以基于范围的 C++11 执行/检查额外的操作/条件吗?