【原创】自制编程语言-7 注释&if语句初步

这次我们尝试制作注释的功能。注释是几乎所有编程语言都有的功能。不同语言的注释符号也不尽相同。汇编语言的注释符号为“;”。C++的注释符号为“//“。PYTHON的注释符号为”#“。

为了方便起见,我们采用C++语言的注释符号”/* */“。同时规定:在/*和注释正文内容中需要有一个空格,注释正文内容和最后的*/也要有一个空格。其实写起程序来也非常简单,只需要加三行代码即可。
什么?又出问题了?
啊,知道了。是我们用来测试的代码有问题。
”=“后面的内容是用get_string读入的,所以会连注释一起读入,导致出错。怎么办?我们用个巧办法吧。如果是数字,肯定中间没有空格,直接用get_word即可。
但是关键在于,字符串赋值的语句中也可能出现注释,所以我们干脆把get_string改掉,让它读入到另外一个双引号就结束掉。
s = "hello world" /* input */
                         ^
                          | 
                 到这里就结束了
说要改动,实际改一个字就可以了。
???为什么是error in program?

话说我们在get_string这个函数上已经花了不少工夫了,我们暂且休息一下,一直盯着一个问题也一定会心烦的,干脆下次再解决吧。正好还有一点时间,我们来讲一下分支结构。

后面我们就要完成分支结构的编程语言了。分支结构可能还是有点困难的,到了循环就更加复杂了。(其实我们现在的那些东西可能完全做不了循环,要是想实现循环的话,可能整个代码体系需要全部推倒重来)
分支结构的基础是跳转。例如,
if a>0 then
....
else
...
endif
我们先计算a>0这个东西,如果成立,直接执行到else结束,然后跳转到endif结束。否则,把后面的跳过,直到else开始,执行到endif。同时, 为了支持多重循环,我们可能会做一个栈。
先说到这里。我们下次继续。
(0)

相关推荐

  • 按键精灵 脚本

    现在看到很多朋友都不明白VBS,但我也没有时间全部写完,所以一天写一些,边写边和大家交流,也希望有朋友能接着写或指出我的错误. 今天我就从总体上对VBS进行介绍,希望能给大家一个直观的印象.另外,讲解 ...

  • Python十分钟上手

    上手一门编程语言非常简单,因为编程就跟我们平常用最简单的英文自言自语一样. 说实话,本人在写此文章之前是完全没学过Python,但我没说我不会其它的编程语言......,所以,我可以用最快速的方法让你 ...

  • 【原创】自制编程语言-9 嵌套if语句(1)

    今天我们继续if语句的制作.在开始之前,我们先来分析一下. 我们可以用一个变量存放当前if的值.如果当前if为0,我们不执行任何东西,直到endif使得当前if为1.事实上,如果是嵌套的if,我们同样 ...

  • 【原创】自制编程语言-9 嵌套if语句(2)

    昨天干了一晚上的调试工作,这嵌套if可是真的烦. 首先先报告一些昨天的错误.(貌似昨天做的栈整个全部是错的)不运行不知道,一运行吓一跳. 这才是真正正确的代码.结构体指针的引用不可以用".& ...

  • 【原创】自制编程语言-6 输入语句

    现在我们的编程语言功能越来越多了,干劲也更足了,趁着这势头,我们继续写下去吧.这次我们来尝试编写输入语句.有了一个功能,加上运算符,我们就可以实现A+B问题了,真不错.输入语句的样式用很多,例如: C ...

  • 【原创】自制编程语言-8 if语句

    隔了几天,我们继续.上次说的get_string的问题,暂时放在一边,我们到时候会专门开一章做修改的. 今天我们的目标是if语句,这还是有点难度的,尤其是嵌套if语句,现在笔者已经不知道怎么去做了.算 ...

  • 【原创】自制编程语言-1 最小编程语言

    一开始,不要想的太难,从最简单的开始,一点一点添加功能,到最后,你就会发现,结果就很像是一个完整的编程语言了. 首先,我们先抛开一切问题,先说说如何对这个编程语言进行编译或是解释.用编译型的语言实在是 ...

  • 【原创】自制编程语言-2 添加新功能

    现在我们可以添加一些新功能了.首先,我们现在的print无法输出换行,所以,我们需要增加一个转义字符\n来进行换行. else if(s[0]=='\"' && s[strl ...

  • 【原创】自制编程语言-3 变量定义

    这一次,我们来尝试制作变量.变量是基本上所有编程语言都有的功能.为了编辑起来方便,这里我制作的编程语言就必须先声明再使用,否则在赋值语句的时候可能会很麻烦. 定义变量的语句,每一个编程语言都是有不同的 ...

  • 【原创】自制编程语言-4 变量的输出

    这次我们来输出变量.输出变量需要两个函数,判断字符串是否为变量名,以及根据type来输出变量. int isvalue(const char *s){ for(int i=0;i<value_p ...

  • 【原创】自制编程语言-5 变量的赋值(1)

    首先我们先看这个函数: void put_value(const char *name){ for(int i=0;i<value_ptr;i++){ if(strcmp(value[i].na ...