gpt4 book ai didi

c - 有没有办法访问 C 的内置关键字,如 'int' 或 'char' 或 'return' ?

转载 作者:太空宇宙 更新时间:2023-11-04 07:35:46 26 4
gpt4 key购买 nike

是否有问题中提到的访问C关键字的函数或方法?我能想到的唯一方法是创建常量,这些常量将被检查以查看是否有任何匹配项,但这可能需要输入很多内容,因为有很多关键字。我希望有什么东西。 (C 新手)

这是作业,所以我不能使用正则表达式或解析库。 HW 的目的是为我的程序提供一个函数并仅返回标识符,因此,我希望有一种方法可以比键入所有关键字更容易访问关键字。

例子:

int foo (int args) 
{
int x = 7;
char c = 'a';
args = x + c;
return args;
}

它应该返回 foo, args, x, c。

我不是在寻找答案,所以如果有一个很好的提示就太好了!如果没有,那么请告诉我,繁琐的方式是唯一的选择。

最佳答案

要识别源中的标识符(区别于其他标记类型),您需要对源进行词法分析。

执行此操作的最简单方法之一是实现 Thompson's Algorithm并使用 the C99 language specification. 中的预处理语法一旦对源进行了词法分析(或在词法分析期间),您只需创建不是 C99 关键字的预处理标识符列表。在几百行代码中实现这一点非常简单。

关于c - 有没有办法访问 C 的内置关键字,如 'int' 或 'char' 或 'return' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9171598/

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