2

我是一名 ruby​​ 开发人员,自从我用 C 编码以来已经有很长时间了。我想在 C 中使用一种行为类似于符号的数据类型。

这可能吗?

  • 程序询问用户姓名

  • 用户回复 - “foobar”

  • 程序声明一个同名的整数,即

    int foobar;
    
4

4 回答 4

8

与解释语言不同,C 在运行时没有变量名字典。运行时根本不存在变量名。因此不幸的是,不可能在 C 中做你想做的事。

于 2011-05-19T21:07:59.043 回答
2

如果不实现自己的符号表来模拟所需的行为(本质上是实现自己的微编程语言),就不可能在 C 中做到这一点。

于 2011-05-19T21:08:23.757 回答
1

不,C 必须在编译时知道名称。

您能做的最好的事情就是创建自己的名称和值字典。不过工作量很大。

于 2011-05-19T21:09:19.747 回答
0

拥有用户名变量后,您想对它做什么?你会用你的 foobaf 变量或在你的 foobaf 变量上执行什么样的操作?

正如其他人所建议的那样,您可以使用数据结构将用户名与一段整数数据动态关联,但知道您想用它做什么将有助于就这是否有必要以及您可能需要哪些数据结构和算法提供建议看。

于 2011-05-19T23:37:04.203 回答