Sisu
Peamine erinevus
Peamine erinevus mõlema programmeerimiskeele vahel on see, et C on lihtne protseduurikeel ja järgib lihtsalt protseduurilise programmeerimise prototüüpi, samal ajal kui C ++ on mitme prototüübi keel, mis tähendab, et see on nii protseduuriline kui ka objektorienteeritud.
Võrdlusdiagramm
Eristamise alused | C | C ++ |
Keele olemus | C on programmeerimiskeele struktuuriline või protseduuriline tüüp. | C ++ on objektorienteeritud programmeerimiskeel ja toetab muu hulgas polümorfismi, abstraktseid andmetüüpe, kapseldamist. Isegi kui C ++ tuletab C-st põhisüntaksi, ei saa seda klassifitseerida ei struktuuri- ega protseduurikeeleks. |
Rõhuasetus | C paneb rõhku sammudele või protseduuridele, mida järgitakse probleemi lahendamiseks. | C ++ rõhutab objekte, mitte etappe ega protseduure. Sellel on kõrgem abstraktsuse tase. |
Ühilduvus ülekoormamisega | C ei toeta funktsioonide ülekoormamist. | C ++ toetab funktsioonide ülekoormamist, mis tähendab, et funktsioonidel võib olla erinev parameeter. |
Andmetüübid | C ei paku stringi ega tõeväärtuse andmetüüpe. See toetab primitiivseid ja sisseehitatud andmetüüpe. | C ++ pakub tõeväärtuse või stringi andmetüüpe. See toetab nii kasutaja määratletud kui ka sisseehitatud andmetüüpe. |
Ühilduvus erandkäsitlusega | C ei toeta erandite käsitlemist otse. Seda saab läbi viia mõne muu funktsiooni kaudu. | C ++ toetab erandi erandit: käitlemine võib toimuda proovimise ja püüdmise blokeerimise kaudu. |
Ühilduvus funktsioonidega | C ei toeta vaikimisi seatud funktsioone | C ++ toetab funktsioone vaikimisi paigutusega. |
Ühilduvus üldise programmeerimisega | C ei ühildu | C ++ ühildub üldise programmeerimisega |
Näpunäited ja viited | C toetab ainult viiteid | C ++ toetab nii viiteid kui ka viiteid. |
Inline funktsioon | C-l pole sisemise funktsiooni. | C ++ omab sisemist funktsiooni. |
Andmeturve | C-programmeerimiskeeles pole andmed turvatud. | Andmed on peidetud C ++ ja pole välistele funktsioonidele juurdepääsetav. Seega on turvalisem |
Lähenemisviis | C järgib ülalt alla lähenemist. | C ++ järgib alt üles lähenemisviisi. |
Standardse sisendi ja väljundi funktsioonid | scanf ja f | cin ja cout |
Muutujate määratlemise aeg | C-s tuleb muutuja alguses määratleda funktsioonis. | Muutujat saab määratleda funktsiooni kõikjal. |
Nimeruum | Puudub | Olevik |
Programmide jaotus | C-keeles olevad programmid on jagatud mooduliteks ja funktsioonideks. | Programmid jagunevad klassidesse ja funktsioonidesse C ++ programmeerimiskeeles. |
Faililaiend | .C | .CPP |
Funktsioon ja operaatori ülekoormus | Puudub | Olevik |
Kaardistamine | Funktsiooni ja andmete kaardistamine on C-s keeruline. | Funktsiooni ja andmete vahel saab kaardistada objektide abil. |
Funktsioonide kutsumine | põhifunktsiooni () saab kutsuda teiste funktsioonide kaudu. | põhifunktsiooni () ei saa muude funktsioonide kaudu kutsuda. |
Pärimine | Võimalik | Pole võimalik |
Mälu eraldamiseks ja ümberjaotamiseks kasutatavad funktsioonid | malloc () ja calloc mälu jaotuse jaoks ning free () funktsioon jaotuse jaoks. | Uusi mälu ja kustutamise operaatoreid kasutatakse mälu jaotamiseks ja eraldamiseks jaotises C ++. |
Mõjud | C ++, C #, Objective-C, PHP, Perl, BitC, samaaegne C, Java, JavaScript, Perl, csh, awk, D, Limbo | C #, PHP, Java, D, Aikido, Ada 95 |
Mõjutatud | B (BCPL, CPL), assamblee, ALGOL 68, | C, ALGOL 68, Simula, Ada 83, ML, CLU |
Keele tase | Kesktase | Kõrge tase |
Klassid | C kasutab seeläbi struktuure, andes vabaduse kasutada sisemisi kujunduselemente | klass ja struktuurid |
C
C on Dennis Ritchie poolt 1969. aastal välja töötatud vana süsteemi programmeerimiskeel. C on heaks kiidetud kui lihtne, paindlik ja võimas keel, mida kasutatakse paljude rakenduste programmeerimiseks, olgu see siis inseneri- või äriprogrammide jaoks. See oli tolle aja B-keele täiendatud versioon. UNIX oli esimene C-keeles kirjutatud opsüsteem ja uusim opsüsteem nagu Windows ja Linux on kirjutatud ka C-keeles. Paljud arvutiarhitektuurid ja opsüsteemid kasutavad seda keelt. C-keele eelised on see, et see on kõige usaldusväärsem, kaasaskantav, paindlik, tõhus, tõhus ja interaktiivne programmeerimiskeel. Seda kasutatakse laialdaselt andmebaasisüsteemide, tekstitöötlusprogrammide, arvutustabelite ja operatsioonisüsteemide arendamisel. Praegu on 19% programmidest välja töötatud C-programmeerimiskeeles.
C ++
C ++ (Cee Plus Plus) on mitme prototüübiga protseduuriline, objektorienteeritud, geneeriline ja funktsionaalne programmeerimiskeel, mis pakub ka võimalusi madala taseme mäluga manipuleerimiseks. Selle kujundas Bjarne Stroustrup ja see ilmus algselt 1983. C ++ uusim versioon ilmus 15. detsembril 2014. C ++ on akumuleeritud keel, mida kasutatakse paljudel platvormidel ja paljud organisatsioonid nagu FSF, LLVM, Microsoft ja Intel kasutavad see keel. Seda peetakse soovitatavaks programmeerimiskeeleks tarkvarainfrastruktuuride ja ressurssidega piiratud rakenduste, näiteks töölauarakenduste, serverite (sealhulgas e-kaubandus, veebiotsing ja SQL-serverid), jõudluskriitiliste rakenduste (sealhulgas telefonilülitid või kosmosesondid) tugevdamiseks ja meelelahutustarkvara.
Peamised erinevused
- C on lihtne protseduurikeel ja järgib lihtsalt protseduurilise programmeerimise prototüüpi, samal ajal kui C ++ on mitme prototüübi keel, mis tähendab, et see on nii protseduuriline kui ka objektorienteeritud.
- C on tõstutundlik programmi keel, C-keeles programmeerimisel tuleb olla ettevaatlik. Kuigi C ++ ei ole tõstutundlik keel.
- C keskendub peamiselt formaalsetele protseduuridele või sammudele mis tahes probleemi lahendamiseks, samas kui C ++ keskendub peamiselt objektidele, mitte protseduuride või sammude juurde.
- Andmete turvalisus on C-s ohustatud, mistõttu ei soovitata seda andmete turvalisuse tagamiseks. C ++-s on andmed peidetud ja väliste toimingutega neile juurde ei pääse.
- C kasutab ülalt alla lähenemist, C ++ aga alt üles lähenemist.
- funktsiooni scanf () ja f () kasutatakse C puhul tavalise sisendi ja väljundi jaoks, samas kui cin >> ja count << kasutatakse C ++ korral standardset sisend- ja väljundfunktsiooni.
- C-d peetakse keskmiseks keeleks, C + + - aga kõrgetasemeliseks keeleks.
- Ülelaadimise ja operaatori ülekoormamise toetamise funktsioon on saadaval C ++ versioonides, samal ajal kui kõigil neil puudub C.