有效组织离散变量:指针数组在C语言中的应用

把离散变量组织起来,访问起来更加方便,无需一个个变量单独赋值。
如modbus读写reg,
把a\b\c\d实时变化分散的变量组织成一个数组reg,方便获取
相当于变量的内存地址池

int main() {
    int a = 10, b = 20, c = 30, d = 40;
    int i;
    int *reg[] = {&a, &b, &c, &d}; // 指针数组,存储变量的地址

    // 通过指针数组访问变量的值
    for ( i = 0; i < 4; i++) {
        printf("Value of reg[%d] = %d\n", i, *reg[i]);
    }

    // 更新变量的值
    *reg[0] = 100;
    *reg[1] = 200;
    *reg[2] = 300;
    *reg[3] = 400;

    // 再次通过指针数组访问变量的值
    for ( i = 0; i < 4; i++) {
        printf("Updated value of reg[%d] = %d\n", i, *reg[i]);
    }

    return 0;
}

reg是一个指针数组,每个元素都是一个指向 int 的指针。
通过 reg[i] 可以访问到变量 a, b, c, d 的地址。
使用解引用操作 *array[i] 可以访问到这些变量的值。
这种方法是C语言中实现类似 map 功能的一种常见方式。通过指针数组,可以方便地访问和操作这些变量的值。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值