C缩写数组命名

 孙俊啟66864 发布于 2022-12-20 19:09

我正在使用PLC,作为练习,我在C中编写一个小程序,以帮助我更好地理解C,PLC和梯形逻辑到C的转换.

我正在使用的PLC具有固定的存储空间,变量存储在"V存储器"位置.例如,我将温度值31存储在名为V3700的存储位置.因此,只要我需要操作温度,我就会在程序中使用V3700.为了模拟PLC存储空间,我只使用一个名为Vmem [65536]的数组.

PLC使用八进制寻址.所以在上面的例子中,V3700是八进制的,所以它实际上是0x7C0或1984(十进制).

我想做的是简化写作,Vmem[x]所以我不必使用括号.例如:

//current method to store 31 to V3700
Vmem[3700] = 31;

//How I want to address the array
V3700 = 31;

//Another example
if(V3700 > 5) printf("V3700 is greater than 5.\n");

有什么方法可以缩写数组名称和地址吗?即使八进制部分太多而十进制值都可以工作,我也可以.我知道我可以#define

我正在使用Ubuntu 12.04和GCC 4.6.3进行开发.

1 个回答
  • 没有比这更简单的方法了

    #define V3700 (Vmem[3700])
    

    如果你有很多这种情况,你可以编写一个程序,生成一个包含所有define语句的标题,以节省你全部输入.

    2022-12-20 19:11 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有