您好,我更改了usbdriveby项目。
只是为了好玩而已
在此范围内未声明错误消息app:'closeapp'。
这是代码:

#if defined(CORE_TEENSY)
#define LED_PIN 11
#else
#define LED_PIN 13
#endif
void setup() {
delay(800);

  openapp("Terminal");
  typeln("screen -S SYSTEMUpdater");
  typeln("say dont use unknown usb sticks because its not safe.");
  closeapp;
}
void openapp(String app)
{
  cmd(KEY_SPACE);
  typeln(app);
}
void typeln(String chars)
{
  Keyboard.print(chars);
  delay(ds);
  Keyboard.println("");
  delay(ds * 4);
}
void closeapp
{
  cmd(KEY_Q);
}
void k(int key)
{
  Keyboard.set_key1(key);
  Keyboard.send_now();
  delay(ds/2);

  Keyboard.set_key1(0);
  Keyboard.send_now();
  delay(ds/2);
}

void mod(int mod, int key)
{
  Keyboard.set_modifier(mod);
  Keyboard.send_now();
  Keyboard.set_key1(key);
  Keyboard.send_now();
  delay(ds);

  Keyboard.set_modifier(0);
  Keyboard.set_key1(0);
  Keyboard.send_now();
  delay(ds);
}

void ctrl(int key)
{
  mod(MODIFIERKEY_CTRL, key);
}

void cmd(int key)
{
  mod(MODIFIERKEY_GUI, key);
}

void shift(int key)
{
  mod(MODIFIERKEY_SHIFT, key);
}

void loop()
{
  digitalWrite(LED_PIN, HIGH);
  delay(ds/2);
  digitalWrite(LED_PIN, LOW);
  delay(ds/2);
}


我搜索了相同的错误,但是我很确定自己在写作中犯了一个错误。

最佳答案

函数closeapp在C语言中在语法上无效。
应该是这样的:

void closeapp()
{
  cmd(KEY_Q);
}


此外,函数调用应类似于:

closeapp();


在语法上有效。

最后一点是,您不应在函数实现之前调用它。这意味着您将提供原型或将其定义放在真正被调用之前。

编辑仅供参考:语句closeapp;在语法上有效,但与42;一样,它是空指令。从字面上看,它是closeapp函数的地址,因此基本上只是一个数字。

08-16 02:04