ArduinoIDEのmain関数は?
ArduinoIDEにはmain関数は無いのか?
C言語の必須アイテムといわれているmain関数がArduinoIDEには出てきません。
ArduinoIDEではsetup関数とloop関数の二つの関数が新規ファイル起動直後に出てきますが、どこにもmain関数はありません。
では、main関数は必要としないのかというと実は有ります。
1)インストール場所
main.cppというファイル名でインストールされてます、ロケーションはかなり奥の方でした。
2)main関数の中味
下にソースコードを書き出してみました。(一部コメント文は抜いてあります)
main関数の中で、setup関数とloop関数が記述してあり、更にloop関数の方は無限ループの設定になってました。
#include <Arduino.h>
// Declared weak in Arduino.h to allow user redefinitions.
int atexit(void (* /*func*/ )()) { return 0; }
// Weak empty variant initialization function.
// May be redefined by variant files.
void initVariant() __attribute__((weak));
void initVariant() { }
void setupUSB() __attribute__((weak));
void setupUSB() { }
int main(void)
{
init();
initVariant();
#if defined(USBCON)
USBDevice.attach();
#endif
setup();
for (;;) {
loop();
if (serialEventRun) serialEventRun();
}
return 0;
}


![FM音源YMF825を使ってみる[仮想MIDI編] FM音源YMF825を使ってみる[仮想MIDI編]](https://umek.topaz.ne.jp/mameduino/wp-content/uploads/2022/08/DSCN5686_R-150x150.jpg)

