• 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++.

VPS Starter Arubacloud
+2 głosów
1,000 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,224 wizyt
pytanie zadane 28 marca 2016 w C# przez hubot Dyskutant (9,100 p.)
+1 głos
2 odpowiedzi 286 wizyt
pytanie zadane 18 września 2016 w PHP przez tytanik2011 Użytkownik (930 p.)
0 głosów
1 odpowiedź 349 wizyt

92,453 zapytań

141,262 odpowiedzi

319,088 komentarzy

61,854 pasjonatów

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.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...