【发布时间】:2014-08-30 21:47:33
【问题描述】:
是否可以在没有跳转表的情况下使用 switch 语句? GCC 创建了我想避免的愚蠢(在我的情况下是不可用的)跳转表。
【问题讨论】:
-
你能详细说明你的问题吗?示例场景。
-
您对 GCC 为您创建的跳转表有什么不满意的地方?您确定与编译器抗争是实现目标所需要做的事情吗?
-
@Santa 在某些平台(例如 arm)上用于跳转表,使用内置函数(例如
__gnu_thumb1_case_sqi),在指定-nostdlib或-nodefaultlibs时不包括在内。因此,跳转表有效地生成了在最终未链接到提供__gnu_thumb1_case_sqi的内容时不起作用的代码。我觉得那很恶心。
标签: c switch-statement jump-table