JS_FailureCases

作者分享了使用ChatGPT编写的C语言预处理器代码遭遇的问题,尤其是在实现stripIf函数时未达到预期。文章描述了一个关于创建HTML和JavaScript文件,实现简单预处理器功能的失败尝试和教学过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

请翻译一下 ,Failure Cases

 

尽管我承认(实际上非常印象深刻)ChatGPT在编程方面有很大帮助,但有时它无法得到我喜欢的代码。多次尝试失败后,我认为记录这些失败案例并在新AI或升级版本出来时再试一次是个好主意。

 

简单预处理器

 

我尝试编写一个简单的C语言预处理器代码,没想到得到的是一个功能不完全的预处理器。我只想要一个简单的预处理器,可以处理指令[#if #elif #endif]和[#define]。我从ChatGPT那里得到的GUI部分和整体代码结构与我预期的差不多。但是实现stripIf(str)的功能并不好。 它远远落后于预期,无法改进到像预期那样运行的代码。

 

这是2023年2月9日尝试的。

 

编写一个包含以下要求的javascript和html文件:

 

1. 在页面中心创建一个三行一列的表格,表格宽度为600像素。表格的网格线应该显示出来。

 

2. 在第一行放置一个名为inputText的文本框,宽度与表格相同,高度为20行。默认文本为:"#define c1 1 \n#define c2 0 \n#if c1 \n a=1\n b=1\n#elif\n a=0\n b=0\n#endif"

 

3. 在第二行放置一个名为stripIf的按钮。

 

4. 在第三行,放置一个名为outputText的文本框,宽度与表格相同,高度为10行。

 

5. 实现一个名为stripIf(str)的函数。该函数接受一个字符串str,提取其中'#if true'(即#if 1)的部分并返回它。函数应该理解"#define"并在检查"#if"条件时应用它。

 

6. 当点击stripIf按钮时,将inputText的文本传递给stripIf(str)函数,并将函数的输出打印到outputText。

 

7. 不要使用<style>标签。

 

8. 将html和javascript分别写入不同的文件。

 

9. 定义所有回调函数单独,并通过addEventListener调用它们。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值