首页 > 解决方案 > C:从输入的数字生成结构变量名称

问题描述

有什么方法可以将字母和数字连接在一起并使其成为结构变量名称?我试图让我的程序为每个员工生成一个单独的结构变量,并将结构变量名称作为他们的 ID 号。

   struct employee {
    int idnum;
    char name[];
    float salary;
}

int main(){
    //get employee id
    int id;
    printf("enter id number: ");
    scanf("%d", &id);
    //makes it into a structure variable
    struct employee /*'e' + id no.*/;
}

谢谢

标签: c

解决方案


不,您不能在程序运行时动态生成任何变量名。

为此,如果最大 id 不是那么大,请使用数组。

struct employee e[MAXID+1];

如果最大 id 很大,则需要实现一个从员工 id 到数组索引的转换器。


推荐阅读