• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

[C/C++] Różnice między językiem C, a językiem C++. Różnica w składni, kompilatory w C/C++.

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
+2 głosów
1,126 wizyt
pytanie zadane 22 lutego 2016 w C i C++ przez Marcin_N_97 Stary wyjadacz (10,290 p.)
Hej!

Kiedyś miałem małą styczność z C, ale zakończyła się ona na podstawach struktur. Teraz samemu kształcę się w programowaniu w C++ (głównie przez kursy Pana Mirosława). Ostatnio zacząłem zastanawiać się nad różnicą pomiędzy C, a C++. Widzę wiele różnic, uproszczeń, rozwinięcia języka. Niby C++ jest ulepszonym C o 1 stopień, w takim razie dlaczego czasami używa się jeszcze C? Podobno programowanie w C jest obowiązkowe przy programowaniu systemów wbudowanych i/lub systemów czasu rzeczywistego. Widzę wiele różnić (głównie dzięki C++ Szkoła Programowania, gdzie różnice są dokładnie opisywane, ale dokładnie przeczytałem na razie pierwsze 150 stron), np. biblioteki, ograniczenie nazw itp. Głównie zaczęło mnie ciekawić kompilowanie programu napisanego w C++ przez kompilator z C i odwrotnie. Na razie wiem, że dla prostszych programów wyjdzie ok, ale nie zawsze. Moglibyście podzielić się swoją wiedzą i doświadczeniem z tymi językami, ponieważ wydaje się to dla mnie bardzo ciekawym tematem? Nie zależy mi na dyskusji, który język jest lepszy i dlaczego tylko ogólnie o plusy/minusy oraz różnice w tych językach - no i oczywiście jak to jest z tymi kompilatorami ;)

Pozdrawiam

Marcin

1 odpowiedź

+1 głos
odpowiedź 22 lutego 2016 przez jpacanowski VIP (101,940 p.)
wybrane 22 lutego 2016 przez Marcin_N_97
 
Najlepsza

Język C pozwala na bardziej niskopoziomowe programowanie. Niektórzy mówią, że C to taki przenośny asembler. W języku C pisze się systemy operacyjne (m.in. Linux, *BSD) ze względu na to, że jesteś bliżej sprzętu, ale przede wszystkim dlatego, że jest to najszybszy język zaraz po asemblerze. W języku C, poza OS'ami, pisze się sterowniki, ale też programuje mikrokontrolery - dzięki czemu kod programu (binarnego) jest bardzo mały. W języku C można programować obiektowo, dzięki różnym sztuczkom - przyjrzyj się niektórym strukturom w jądrze Linuksa.

http://kaczus.ppa.pl/art/c_obiektowo,3.html

komentarz 22 lutego 2016 przez Marcin_N_97 Stary wyjadacz (10,290 p.)
Słyszałem kiedyś, że NASA programuje tylko w C i językach asemblera, ponieważ są bardziej odporne na awarie.

 

A co z kompilowaniem. Czy używając odpowiednich bibliotek można łączyć te dwa języki ? Czy istnieje kompilator, który łączy oba te języki ?
komentarz 22 lutego 2016 przez jpacanowski VIP (101,940 p.)

Kod w języku C jest bardzo szybki, mały i daje ogromne możliwości, ale łatwo popełnić bardzo poważne błędy przez mniej zaawansowane osoby, jak np.:

 Język C po prostu nie trzyma ciebie za rączkę tak jak jest to w wielu innych językach, które mają wbudowane odpowiednie mechanizmy.

komentarz 22 lutego 2016 przez jpacanowski VIP (101,940 p.)

A co z kompilowaniem. Czy używając odpowiednich bibliotek można łączyć te dwa języki ? Czy istnieje kompilator, który łączy oba te języki ?

Musisz zapytać ekspertów. Ja jestem akurat fanatykiem języka C, ale ogarniam język C++.

komentarz 22 lutego 2016 przez Marcin_N_97 Stary wyjadacz (10,290 p.)
Język C nie trzyma mnie za rączkę - jak dla mnie ma to swoje plusy i minusy. Łatwiej jest programować w C++ bo "doradza i chroni". Ale C nauczy mnie bardziej analitycznego myślenia. Zgadza się?

 

Osobiście wychodzę z założenia, że warto inwestować swój wolny czas w naukę coraz to innych rzeczy. Moja przygoda z C była niewielka i spowodowana kursem na studiach trwającym jeden semestr. Mógłbyś mi na marginesie polecić jakiś kurs/książkę lub inny sposób na naukę języka C?
komentarz 22 lutego 2016 przez jpacanowski VIP (101,940 p.)

Jak dla mnie, genialny tutek
https://pl.wikibooks.org/wiki/C

A tu o wskaźnikach
https://pl.wikibooks.org/wiki/C/Wska%C5%BAniki

I jeszcze WIĘCEJ o wskaźnikach :)
https://pl.wikibooks.org/wiki/C/Wska%C5%BAniki_-_wi%C4%99cej

Szkoda, że nie ma o OOP w C, ale ta strona to wypełnia
http://kaczus.ppa.pl/art/c_obiektowo,3.html

komentarz 22 lutego 2016 przez Marcin_N_97 Stary wyjadacz (10,290 p.)
Dzięki bardzo, Wiki C posługiwałem się podczas tworzenia programów w C. Jak zakończę programowanie obiektowe to przeskoczę wtedy na C, podobno nie opłaca się uczyć na raz dwóch języków od zera.

Ciekawe kiedy zjawią się eksperci od C++ i wypowiedzą się o tym języku.

Podobne pytania

0 głosów
1 odpowiedź 2,444 wizyt
pytanie zadane 28 marca 2016 w C# przez hubot Dyskutant (9,090 p.)
+1 głos
2 odpowiedzi 339 wizyt
pytanie zadane 18 września 2016 w PHP przez tytanik2011 Użytkownik (930 p.)
0 głosów
1 odpowiedź 370 wizyt

93,187 zapytań

142,203 odpowiedzi

322,023 komentarzy

62,513 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 2581p. - dia-Chann
  2. 2537p. - Łukasz Piwowar
  3. 2528p. - Łukasz Eckert
  4. 2514p. - CC PL
  5. 2445p. - Łukasz Siedlecki
  6. 2443p. - rucin93
  7. 2252p. - Tomasz Bielak
  8. 2201p. - Michal Drewniak
  9. 2156p. - Marcin Putra
  10. 2152p. - Adrian Wieprzkowicz
  11. 2105p. - Mikbac
  12. 1941p. - Anonim 3619784
  13. 1733p. - rafalszastok
  14. 1480p. - Michał Telesz
  15. 1469p. - ssynowiec
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...