Skocz do zawartości

Programowanie w C, a C++


Pomocna odpowiedź

Witam. Jestem totalnym nowicjuszem w dziedzinie budowy robotów i ich programowania i mam pytanie. Czytałem że jednym z języków programowania robotów może być język C. I tu nasuwa się moje pytanie. Czy tak samo można programować je w C++ ? W C++ programuje już od ponad roku i wiem że jest to jakby "nowsza" wersja języka C ale jednak nie jest to już język C gdyż jest rozszerzony więc nie jestem pewien czy programuje sie identyczie czy jednak musze poczytac o tym starszym C ? Z góry dziękuje za odpowiedź.

Link to post
Share on other sites

Jeśli znasz C++ łatwo będzie Ci przejść na C. Jest trochę drobnych różnic, ale ogólnie C++ to nadzbiór C. Więc wystarczy zrezygnować z klas, przestrzeni nazw, czy szablonów i program bez problemu skompiluje się w C.

Jak dla mnie główna różnica to konieczność deklarowania zmiennych na początku bloku oraz brak biblioteki STL.

Są za to kompilatory C++ na uC. Nie polecam, bo kod bywa bardzo długi, ale jak ktoś lubi C++ to można używać.

Link to post
Share on other sites

Jeśli masz pod ręką kompilator C++ na swój mikrokontroler, to nic nie stoi na przeszkodzie żeby pisać właśnie w C++. Zaletą C jest tutaj głównie popularność, bo bez problemu znajdziesz kompilator C na praktycznie wszystko.

Są za to kompilatory C++ na uC. Nie polecam, bo kod bywa bardzo długi, ale jak ktoś lubi C++ to można używać.

Z tym się akurat nie zgodzę, długość kodu asemblerowego nie zależy od języka, tylko od programisty:) Jeśli zna się C++ na tyle, że ma się świadomość tego jak mniej więcej będzie wyglądał kod po skompilowaniu, to będzie wiadomo co się sprawdzi na uC a co nie. Nie wszystkie elementy dodane w C++ nadają się do programowania mikrokontrolerów, np. o szablonach i wspomnianym przez Ciebie STL można spokojnie zapomnieć, tak samo jak o całym mechanizmie wyjątków. Ale już takie rzeczy jak argumenty domyślne, przeciążanie funkcji (i operatorów) nie wprowadzają żadnego dodatkowego obciążenia.

Dobra, kończąc ten przydługi wywód powiem tak: jeśli znasz dobrze C++ i masz kompilator na swoją platformę, to nie ma powodu żebyś z niego rezygnował. A o C i tak możesz poczytać, każdy programista C++ powinien go znać🙂

Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.