C vs C | C Sharp vs C Languages
Siden 1950 er mange programmeringssprog blevet optaget, mens nogle er helt nye og andre er varianter af eksisterende for at understøtte adskillige programmeringsparadigmer. Både C og C er programmeringssprog, som blev introduceret som varianter af eksisterende sprog. Det er kendt, at C’s forgænger er B, oprindeligt udviklet af Ken Thompson, med bidrag fra Dennis Ritchie, og C er designet med konceptet C-like Object Oriented Language i tankerne. C bruges til system- og applikationssoftwareudvikling, hvorimod C er meget bedre til applikationssoftwareudvikling.
C Sprog
C er et alment programmeringssprog, som oprindeligt blev udviklet af afdøde Dennis Ritchie ved Bell Labs i 1972. Selvom idéen med sprog var at understøtte brugervenlig systemprogrammering, er det blevet brugt til større programmer i forskellige domæner.
C er et maskinskrevet sprog, hvor både grundlæggende og afledte datatyper er til stede, og udtryk dannes ud fra operatorer og operander. C er et strukturelt programmeringssprog, som giver grundlæggende kontrol-flow-konstruktioner med if-else, switch, while og etc. Derudover kan input og output dirigeres til terminalen eller til filerne, og de relaterede data kan gemmes sammen i arrays eller strukturer. Programmet er understøttet med funktioner, som vil returnere værdier af grundlæggende typer, strukturer, fagforeninger eller pointer. Og funktioner kan kaldes rekursivt.
C er et letvægtssprog, og et C-program består af kilde- og overskriftsfiler. C kompileringen starter med C preprocessor erstatter makroer i programfilerne. Derefter konverterer C-kompileren koden til assembly-koden. Assembleren konverterer assemblerkoden til objektkoden, før Link Editor kombinerer biblioteksfunktionerne eller funktionerne defineret i andre kildefiler, der refereres til af programmets kildekode (med main()) for at skabe en eksekverbar fil.
C Sprog
C er udviklet af Microsoft, hvis udviklingsteam blev ledet af Anders Hejlsberg. C er et objektorienteret programmeringssprog, der tilbyder meget gode funktioner såsom kontrol af matrixgrænser, stærk typekontrol og automatisk affaldsindsamling. Det er virkelig et sprog på højt niveau for udviklerne på grund af softwarens robusthed, holdbarhed og programmørproduktivitet.
C programmer er organiseret ved hjælp af navnerum, som tilbyder en hierarkisk måde at organisere elementer i et eller flere programmer på.
Sproget understøtter hovedsageligt to typer: værdityper og referencetyper. Den understøtter boksning og un-boxing gennem dens implementering af variabler som objekter. Den understøtter C++ skabeloner via Generics, som er meget vigtige i generisk programmering. Selvom sproget ikke har en eksplicit præprocessor, understøttes den C præprocessor-baserede symboldefinition.
I C kompileres kildekoden til en CIL-kode (common intermediate language), og ved kørsel konverteres denne CIL-kode til maskinkode ved hjælp af JIT (Just In Time) compiler. Denne præ-eksekveringstidskompilering skal finde sted på den computer, som programmet skal afvikles på, fordi den vil evaluere maskinens egenskaber (processor, hukommelse og så videre) for at generere kode, der er mere effektiv.
Hvad er forskellen mellem C og C?
• C er et objektorienteret programmeringssprog, mens C er et strukturelt sprog.
• C har adgang til OS-funktioner på lavt niveau, hvilket gør den bedre i ydeevne sammenlignet med C.
• C er et 'administreret' sprog, hvilket betyder, at kode kompileres til en mellemform, der derefter kører på en virtuel maskine. Denne særlige VM er kendt som "CLR" eller Common Language Runtime. Men C er et 'uadministreret' sprog, hvor koden er kompileret til sin oprindelige form.
• I den foreliggende sammenhæng bruges C til systemprogrammering og ydeevnekritiske programmer, mens C tilbyder løsninger til web, desktop og mobil.
• C tilbyder stærk markørmanipulation og aritmetik, mens C kun tilbyder pointere i usikker tilstand.
• Hukommelsesstyring er ikke en programmørs pligt i C, som understøttes af Garbage Collection.
• C understøtter makro, hvilket C ikke gør.
• Konceptet med globale variable, funktioner og konstanter undgås i C ved at erstatte det med statiske medlemmer af offentlige klasser.
• C tillader standardargumenter på funktionsparametre.
• I C er array bundet kontrol og definerede størrelsestyper til stede.
• C tilbyder avanceret runtime type information og refleksion.
• C er et ret let sprog, hvorimod C er enormt.
• C har indbygget understøttelse af trådning.
• I C kan aritmetiske operationer kontrolleres for overløb.
• C konceptualiserer alle datatyper til objekter, hvilket igen understøtter en masse datatypemanipulationer.