我最近接触了struct,在试验中,我遇到了一个我似乎找不到解决方案的问题。
我想创建一个包含多个成员的结构,但我希望自动生成每个成员的名称,以避免手动执行此操作的繁琐过程。到目前为止,我已经有了我想要用来创建成员的结构和函数。
结构
struct Customers
{
char name[30];
int age;
}
原型(prototype)
void newCustomer(Customers *Customer);
功能
void newCustomer(Customers *Customer)
{
char gender;
int age;
scanf_s("%c", 1, &gender);
scanf_s("%d", &age);
Customer->gender = gender;
Customer->age = age;
}
主要
int main()
{
int noOfCustomers;
int i = 0;
printf("How many customers will you be entering? : ");
scanf_s("%d", &noOfCustomers);
for(i = 0; i < noOfCustomers; i++)
{
Customers i;
newCustomer(&i);
}
return 0;
}
基本上我想做这样的事情......每个成员都自动由一个 ID 或数字表示。我知道上面的例子不会工作,因为 i 在循环中被本地声明为结构成员而不是 int 但我想知道是否有实现此目的的方法。
在此先感谢您的帮助:)
最佳答案
可以使用静态整数变量,调用itoa
将其转换为字符串,然后自增。
关于c - 在 C 中自动生成结构成员名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21666261/