Robotc 中的电机功能是如何工作的

How does the motor function work in Robot C

我的团队正在为 RobotC 编写代码,RobotC 是一种语法类似于 C 的语言。它主要用作机器人编程的介绍。它有基本的 C 语言:if 语句、for 和 while 循环、函数,它甚至还有结构、数组和指针,但它们并不经常使用。主要区别在于它是交互的,具有多线程,不是免费的,并且您一次只能编译一个文件。

我们想让马达动起来。为此,您通常会这样写。

 motor[motorA] = 50;

motor 是 RobotC 提供的一个数组,其中包含它将电机设置为的所有值。 motorA 是有线端口的枚举。
50是功率等级。

我的队友不小心(或者可能是故意的)写了这个

 motor(motorA) = 50;

我正要纠正他,没想到编译成功了 运行!

我知道 Java 和一点普通的 C,这对我来说没有意义。您不能设置函数的值 return...可以吗?

有人能解释一下为什么这样吗?

如果您查看 RobotCIntrinsics.c(当您打开代码文件时,只需右键单击其中一个 motor[] 命令并从上下文菜单中单击 select "Go to definition/declaration"看到它),你会发现电机命令被定义为 "property." 现在,我不能说这到底是什么意思,但根据我的经验,这意味着你可以使用 [] 或 () 来访问其中的值。它不是数组,也不是函数调用。这完全是另一回事,显然允许使用这两种语法。