我正在寻求帮助,了解如何使用 char 变量命名结构。
#include <stdio.h>
#include <stdlib.h>
struct user {
char name[50];
int age;
char hobby[50];
};
int main()
{
char nameVar[50];
int ageVar;
char hobbyVar[50];
printf("What is your name?");
scanf("%s", nameVar);
return 0;
}
在这里我想根据变量 nameVar 来命名结构。 感谢您提前提供的任何帮助。
最佳答案
在 C 语言中无法做到这一点。这在许多解释语言中都是可能的,但对于编译语言(如 C)来说,即使确实存在,也是很少见的。
你可以做的就是拥有某种字典来模仿这一点。当然,您必须为此找到一个库或编写自己的代码,但类似这样的事情是可能的:
void add_to_dict(const char *str);
struct user get_element_from_dict(const char *str);
int main()
{
printf("What is your name?");
scanf("%s", nameVar);
add_to_dict(nameVar);
struct user myUser = get_element_from_dict(nameVar);
printf("Name, age and hobby: %s %d %s\n" myUser.name, myUser.age, myUser.hobby);
}
关于c - 如何在 C 编程中根据 char 变量命名结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57355928/