gpt4 book ai didi

c - 如何在c(而不是c++)中获取输入而不考虑数据类型?我想要一个可以存储任何类型数据类型变量的通用变量

转载 作者:行者123 更新时间:2023-11-30 20:46:22 29 4
gpt4 key购买 nike

实际上我想要一个变量,它可以接收各种值,无论是 int、float 还是 char。谁能告诉我一种方法来做到这一点。但该程序应该是用 C 编写的(而不是用 C++ 编写的)。

最佳答案

您应该始终使用对您的应用程序有意义的类型,但如果您确实需要“无类型”数据元素,则可以使用 void * 来实现,然后通过类型转换来使用它无论你传递什么:

void *myvar = malloc(100);  // set up typeless element

*(int *)myvar = 10; // cast to an int and save an int
printf("%d\n", *(int *)myvar); // print as an int

*(float *)myvar = 10.25; // cast to a float and save a float
printf("%f\n", *(float *)myvar); // print as a float

关于c - 如何在c(而不是c++)中获取输入而不考虑数据类型?我想要一个可以存储任何类型数据类型变量的通用变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15901067/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com