Saturs
Galvenā atšķirība
Galvenā atšķirība starp abām programmēšanas valodām ir tā, ka C ir vienkārša procesuālā valoda un vienkārši seko procesuālās programmēšanas prototipam, savukārt C ++ ir vairāku prototipu valoda, kas nozīmē, ka tā ir gan procesuāla, gan orientēta uz objektu.
Salīdzināšanas tabula
Atšķirības pamats | C | C ++ |
Valodas būtība | C ir programmēšanas valodas strukturālais vai procesuālais tips. | C ++ ir uz objektu orientēta programmēšanas valoda un cita starpā atbalsta polimorfismu, abstraktos datu tipus, iekapsulēšanu. Pat ja C ++ atvasina pamata sintakse no C, to nevar klasificēt kā strukturālu vai procesuālu valodu. |
Uzsvara punkts | C uzsvars tiek likts uz soļiem vai procedūrām, kas tiek veiktas, lai atrisinātu problēmu. | C ++ uzsver objektus, nevis soļus vai procedūras. Tam ir augstāks abstrakcijas līmenis. |
Saderība ar pārslodzi | C neatbalsta funkciju pārslodzi. | C ++ atbalsta funkciju pārslodzi, norādot, ka var būt funkciju nosaukumi ar mainīgiem parametriem. |
Datu veidi | C nesniedz virkņu vai Būla datu tipus. Tas atbalsta primitīvus un iebūvētus datu tipus. | C ++ nodrošina Būla vai virknes datu tipus. Tas atbalsta gan lietotāja definētus, gan iebūvētus datu tipus. |
Saderība ar izņēmumu apstrādi | C tieši neatbalsta izņēmumu apstrādi. To var veikt, izmantojot dažas citas funkcijas. | C ++ atbalsta izņēmuma izņēmumu: apstrādi var veikt, mēģinot bloķēt bloķēšanu. |
Saderība ar funkcijām | C neatbalsta funkcijas ar noklusējuma iestatījumiem | C ++ atbalsta funkcijas ar noklusējuma iestatījumiem. |
Saderība ar vispārējo programmēšanu | C nav savietojams | C ++ ir savietojams ar vispārējo programmēšanu |
Norādes un atsauces | C atbalsta tikai norādes | C ++ atbalsta gan norādes, gan atsauces. |
Iekšējā funkcija | C nav inline funkcijas. | C ++ ir iekļauta funkcija. |
Datu drošība | C programmēšanas valodā dati nav nodrošināti. | Dati ir paslēpti C ++ un nav pieejami ārējām funkcijām. Tādējādi ir drošāk |
Pieeja | C seko no augšas uz leju pieeja. | C ++ ievēro augšupēju pieeju. |
Standarta ievades un izvades funkcijas | scanf un f | cin un cout |
Mainīgo noteikšanas laiks | C daļā mainīgais jādefinē sākumā, funkcijā. | Mainīgo var definēt jebkurā funkcijas vietā. |
Vārdu telpa | Nav | Klāt |
Programmu nodaļa | C valodas programmas ir sadalītas moduļos un funkcijās. | Programmas ir sadalītas klasēs un funkcijās C ++ programmēšanas valodā. |
Faila paplašinājums | .C | .CPP |
Funkcija un operatora pārslodze | Nav | Klāt |
Kartēšana | Funkcijā C un C kartēšana ir sarežģīta. | Kartēšanu starp funkciju un datiem var viegli izdarīt, izmantojot “Objekti”. |
Funkciju izsaukšana | galveno () funkciju var izsaukt, izmantojot citas funkcijas. | galveno () funkciju nevar izsaukt, izmantojot citas funkcijas. |
Mantojums | Iespējams | Nav iespējams |
Funkcijas, ko izmanto atmiņas sadalīšanai un pārdalīšanai | malloc () un calloc atmiņas sadalīšanai un bezmaksas () funkcija dalīšanai. | Jaunie un dzēšanas operatori tiek izmantoti atmiņas sadalīšanai un pārdalīšanai C ++. |
Ietekmes | C ++, C #, Objective-C, PHP, Perl, BitC, vienlaikus C, Java, JavaScript, Perl, csh, awk, D, Limbo | C #, PHP, Java, D, Aikido, Ada 95 |
Ietekmē | B (BCPL, CPL), asambleja, ALGOL 68, | C, ALGOL 68, Simula, Ada 83, ML, CLU |
Valodas līmenis | Vidēja līmeņa | Augsts līmenis |
Klases | C tādējādi izmanto struktūras, dodot brīvību izmantot iekšējos dizaina elementus | klase un struktūras |
C
C ir veca sistēmas programmēšanas valoda, kuru 1969. gadā izstrādāja Deniss Ritčs. C ir pieņemta par vieglu, elastīgu un jaudīgu valodu, ko izmanto daudzu lietojumu programmēšanai, neatkarīgi no tā, vai tie ir paredzēti inženierzinātņu programmām vai biznesa programmām. Tā bija tā laika uzlabotā B valodas versija. UNIX operētājsistēma bija pirmā operētājsistēma, kas rakstīta C valodā, un jaunākās operētājsistēmas, piemēram, Windows un Linux, ir rakstītas arī C valodā. Šo valodu izmanto daudzas datoru arhitektūras un operētājsistēmas. C valodas priekšrocības ir tas, ka tā ir visuzticamākā, pārnēsājamā, elastīgā, efektīvā, efektīvā un interaktīvā programmēšanas valoda. To plaši izmanto datu bāzu sistēmu, tekstapstrādes programmu, izklājlapu un operētājsistēmas pilnveidošanā. Pašlaik 19% programmu ir izstrādātas C programmēšanas valodā.
C ++
C ++ (Cee Plus Plus) ir vairāku prototipu, procesuāla, uz objektu orientēta, vispārīga un funkcionāla programmēšanas valoda, kas arī nodrošina iespējas zema līmeņa manipulācijām ar atmiņu. To izstrādāja Bjarne Stroustrup, un sākotnēji tā tika izlaista 1983. gadā. Jaunākā C ++ versija tika izlaista 2014. gada 15. decembrī. C ++ ir uzkrāta valoda, kas tiek izmantota daudzās platformās, un daudzas organizācijas, piemēram, FSF, LLVM, Microsoft un Intel, izmanto šī valoda. To uzskata par ieteicamo programmēšanas valodu programmatūras infrastruktūru un ierobežotu resursu stiprināšanai, piemēram, darbvirsmas lietojumprogrammām, serveriem (ieskaitot e-komerciju, tīmekļa meklēšanu un SQL serverus), veiktspējai kritiskām lietojumprogrammām (ieskaitot telefona slēdžus vai kosmosa zondes) un Izklaides programmatūra.
Galvenās atšķirības
- C ir vienkārša procesuālā valoda un vienkārši seko procesuālās programmēšanas prototipam, savukārt C ++ ir vairāku prototipu valoda, kas nozīmē, ka tā ir gan procesuāla, gan orientēta uz objektu.
- C ir reģistrjutīga programmas valoda, ir nepieciešama piesardzība, ja programmējat C valodā. Lai gan C ++ nav reģistrjutīga valoda.
- C galvenokārt koncentrējas uz formālām procedūrām vai soļiem jebkura jautājuma risināšanai, savukārt C ++ galvenokārt koncentrējas uz objektiem, nevis procedūrām vai soļiem.
- Datu drošība ir apdraudēta C daļā, tāpēc datu drošībai tas nav ieteicams. Programmā C ++ dati ir paslēpti, un tiem nevar piekļūt, izmantojot ārēju darbību.
- C izmanto augšupēju pieeju, savukārt C ++ izmanto augšupēju pieeju.
- funkciju scanf () un f () C lieto standarta ievadei un izvadei, bet cin >> un count << izmanto standarta ievades un izvades funkcijai C ++ gadījumā.
- C tiek uzskatīta par vidēju valodu, savukārt C ++ - par augsta līmeņa valodu.
- C ++ ir pieejama pārslodzes un operatora pārslodzes atbalsta funkcija, bet visiem tiem trūkst C.