zoukankan      html  css  js  c++  java
  • 数组遍历技巧

    假设一个int 类型大小为 5 的 a 指针;

    int *a;

    a = (int *)malloc(5 * sizeof(int));

    我们要计算相邻两个点的距离:

    可以写成

    float *distance;

    distance = (float *)malloc(5 * sizeof(float));

    for(int i = 0; i < 4; i++)

    {

    distance[i] = a[i+1] - a[i];

    }

    distance[4] = a[0]-a[4];

    以上这种方法遍历以外需要多最后一步。

    可以考虑将指针的容量加1,则通过遍历即可实现:

    int *a;

    a = (int *)malloc(6 * sizeof(int));

    float *distance;

    distance = (float *)malloc(5 * sizeof(float));

    a[5]=a[0];

    for(int i = 0; i < 5; i++)

    {

    distance[i] = a[i+1] - a[i];

    }

    这样直接遍历即可得出所有值;

  • 相关阅读:
    git取消文件跟踪
    servlet
    查杀端口进程
    初始化git仓库,并push到远端
    tomcat
    bootstrap
    idea中web工程错误
    i++和++i
    js算法
    编程工具
  • 原文地址:https://www.cnblogs.com/qingsunny/p/3216360.html
Copyright © 2011-2022 走看看