Confusion regarding arduino programming language?

What exactly is arduino programming language? Is it only 'C' or only'C++' or mix of both 'C'and 'C++' ???

Yes. C++ is backwards compatible with C, so you can mix C and C++ features in your code as you like.

What makes Arduino language different to standard C/C++ is that a small number of standard functions & features have been removed because they consume too many resources, and other functions have been added to allow reading and writing of pins etc.

Hello abtj_90

Take a search engine of your choice and ask the WWW for "programming language arduino"

Have a nice day and enjoy coding in C++.

if you have used Python the ESP32 supports MicroPython

it is just Arduino marketing.
In the end you program in c++. The Arduino framework added lot of libraries, functions, definitions, constants,... But in the end it's c++.

1 Like

it's an hyperbole to not frighten away artists and tell them that they will use a C++ compiler :slight_smile:

1 Like

here's a lengthy discussion

Arduino programs are C++, compiled by gcc.

The reason this question gets asked is because if you examine an Arduino program you will find things that are not mentioned in any pure C++ textbook. This is simply because there are libraries (mostly written in C++) that let you interface to the Arduino or whatever other things you've attached.

It's just like using a database from C++ - there will be a library needed to deal with the API it uses and your C++ text won't mention it most likely.

The Arduino IDE complicates matters a bit. If you use it (you don't have to) It does some textual transformations for you to add main, and some function prototypes, but the output of that is pure C++. Whether you could consider that that preprocessing implies a different language is in use is a philosophical question - personally, I don't think so.

great answers here

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.