— 由 @Niefan Du 翻译
cough
功能这样的自定义块,这是我们对自己的一种抽象。我们将使用一门新的语言 C,它是一门纯文本语言,而且带有一些神秘而有趣的关键字和标点符号:
#include <stdio.h>
int main(void)
{
printf("hello, world\\n");
}
我们可以把很多C语言中的结构与我们在Scratch里使用过的块进行对比.对于我们已经介绍的那些原则来说,语法远没有它们重要.
“say(hello,world)”块是一个Scratch函数(function),对应到C语言中就是printf("Hello, world\\n");
.在C语言中,将什么东西打印(print)到屏幕上的函数就是printf
,而其中的f
是“format”(格式),意味着我们可以用不同的方式格式化字符串.然后我们使用括号来传入(pass in)我们想要打印的内容.我们用双引号来括住文本或字符串(string),然后加上一个\\n
,表示在屏幕上另起一行.(然后,我们下一次调用printf
时,文本就会出现在新的一行.最终我们在句末添加一个分号;
).
”set [counter]to(0)“块创建了一个变量(variable),不过我们在C语言里会说int count = 0
,这里的int
指定我们的变量类型是一个整型(integer).
counter = counter + 1;
.(在C语言中 ‘=’ 号不是表达counter
与counter + 1
相同.而是说将右边式子的值复制到左边的式子里)我们也可以写counter += 1;
或者couner++;
,两者都是语法糖(syntactic sugar),可以在减少语法长度的同时拥有一样的功能.一个条件语句(condition)则对应为:
if (x < y)
{
printf("x is less than y\\n");
}
{
和 }
(以及缩进(indentation)来指明如何组织嵌套我们的代码行)