首页 > 解决方案 > 将变量数加 1

问题描述

我有代码,其中有大量字符都被声明为比另一个高 1。例如 m1、m2、m3...

有什么方法可以在 for 循环中将我正在搜索的数字增加 1?我有一长串字母,我需要检查它们是否与个人匹配,但由于情况限制,我不能使用字符串。

a1 是我正在寻找的特定字符,m1 是我必须作为个人存储的一长串字符中的第一个

我的尝试不会运行:

for (a1 != m["%d"], &check, check++)

不幸的是,由于我的应用程序的限制,我只能在我的解决方案中使用 stdio.h 和 stdlib.h。任何帮助将不胜感激

标签: cvariables

解决方案


变量名由编译器使用,但不是生成的可执行文件的一部分,因此在运行时无法访问。您可以通过使用各个变量的地址初始化的数组来模拟类似的东西:

#include <stdio.h>
int main() {
    int a0=0,a1=10,a2=15;
    int *a[3] = { &a0, &a1, &a2 };
    for (int i=0; i<3; i++) {
      int val = *(a[i]);
      printf("a%d:%d\n",i,val);
    }
}

输出:

a0:0
a1:10
a2:15

推荐阅读