c - 如何在另一个变量中使用变量引用?

标签 c variables

我想做这样的事情:

int num1,num2,num3;
for(int i=0;i<3;i++)
{
     printf("%i",num {put i+1 here});
}

不要告诉我解决这个问题的方法,因为这实际上不是我的代码。

请告诉我一种在变量名称中使用变量引用的方法。

最佳答案

Tell me a way to use variable references inside variable names please.

这是不可能的。您需要一个数组。

简单(也是最好)的方法很简单:

int num[3] = {0};
for(int i=0;i<3;i++)
{
     printf("%i", num[i]);
}

但是,如果您由于某种原因无法更改 3 个 num 变量的名称(又名 num1、num2、num3),则可以创建一个包含指向这 3 个变量的指针的数组:

int num1=0, num2=0, num3=0;
int* pNum[3] = {&num1, &num2, &num3};  // Create array of pointers to the variables
for(int i=0;i<3;i++)
{
     printf("%i", *pNum[i]);  // Access num1, num2, num3 via the pointer array
}

但是该解决方案并不好,因为它使代码难以阅读和理解。

关于c - 如何在另一个变量中使用变量引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41314457/

相关文章:

c++ - 使用 protected 和继承时无法访问在类中声明的私有(private)成员

Javascript 使用变量作为对象(数组)名称

c - 为什么使用 FileTimeToSystemTime() 时程序崩溃?

c - lldb 查找应用程序的退出点

c - 将两个别名传递给 `typedef struct` 意味着什么?

c - sizeof() 不被预处理器执行

sql - 在 sql (hive) 中声明变量

javascript - 在 Ajax 中传递 URL 变量

java - 从另一种形式java更改值

c - Cassandra 是否存在 C 语言客户端库?