Использует ли Arduino C или c++? [закрытый]

исходя из Python, вся вещь C / C++ для начала чужда... и тогда я вижу в одном месте, что Arduino использует "стандартный" C, а в другом, что он использует "стандартный" C++, и так далее и тому подобное. Что это? Мое, по общему признанию, грубое понимание разницы между ними заключается в том, что C++ - это (грубо) C с классами/объектами. Как это влияет на то, какой язык или диалект (C или c++) я должен сосредоточиться на изучении для использования в первую очередь с Arduino?

3 ответов


Arduino не работает ни C, ни c++. Он запускает машинный код, скомпилированный из C, C++ или любого другого языка, который имеет компилятор для набора инструкций Arduino.

C является подмножеством c++, если Arduino может "запустить" C++, то он может "запустить" C.

Если вы еще не знаете C или c++, вы, вероятно, должны начать с C, просто чтобы привыкнуть ко всему" указателю". Однако вы потеряете все возможности наследования объектов.


Arduino эскизы написаны на C++.

вот типичная конструкция, с которой вы столкнетесь:

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
...
lcd.begin(16, 2);
lcd.print("hello, world");

Это C++ не C.

поэтому сделайте себе одолжение и выучить C++. Есть много книг и интернет-ресурсов.


оба поддерживаются. Процитировать Домашняя страница Arduino,

основные библиотеки написаны на C и C++ и скомпилированы с использованием avr-gcc

обратите внимание, что C++ является надмножеством C (ну,почти), и поэтому часто может выглядеть очень похоже. Я не эксперт, но я думаю, что большая часть того, что вы будете программировать для Arduino в первый год на этой платформе, не понадобится ничего, кроме простого C.