Arduino BENUTZT C++, es IST aber kein C++, da die IDE im Hintergrund Arduino-typische Libs einsetzt, die NICHTS mehr mit Standard-C-Libs zu tun haben, z.B. Serial oder Wire oder String oder SD.
Manche Standard-Libs existieren überhaupt nicht für Arduino, z.B. das komplette und vollständige stdio.h - stattdessen abgespeckte oder ganz andere Funktionen
(z.B. kein int main(int argc, char** argv), sondern setup() und loop(), kein FILE * stream und kein fprintf, fopen, fclose, fgets, fscanf für files - und das für eine Sprache, die als ihr Grundprinzip bezeichnet: "everything is a file").
Die Syntax ist zwar immer noch C- und C++- BASIERT, aber sie IST kein C++ (Originalton eines Arduino-Entwicklers (Paul Stoffregen, wenn ich mich recht erinnere) ).
Die Arduino-IDE greift dazu extrem tief in das Library-, Linker- und Make/Build-Management ein.
Vieles, was mit dem Standard-GCC Compiler OHNE Arduino-IDE möglich ist oder wäre, geht nicht mehr MIT der Arduino-IDE, dafür aber andere Dinge. Wenn du selber bereits viel mit Arduino gearbeitet hast oder hättest, weißt oder wüsstest du die Unterschiede. Sie fallen einem extrem dann auf, wenn man von Arduinisch zu C++ für Raspi/Linux wechselt.
Das sollte der OP wissen, dennoch ist es kein Hinderungsgrund.
Lesezeichen