C er et proceduremæssigt programmeringssprog oprindeligt udviklet af Dennis Ritchie i år 1972 på Bell Laboratories of AT&T Labs. Det blev hovedsageligt udviklet som et systemprogrammeringssprog til at skrive UNIX-operativsystemet.

De vigtigste funktioner i C-sproget inkluderer:
- Generelle formål og bærbare
- Hukommelsesadgang på lavt niveau
- Hurtig hastighed
- Ren syntaks
Disse funktioner gør C-sproget velegnet til systemprogrammering som et operativsystem eller compilerudvikling.
Hvorfor skal vi lære C?
Mange senere sprog har lånt syntaks/funktioner direkte eller indirekte fra C-sproget. Ligesom syntaks i Java, er PHP, JavaScript og mange andre sprog hovedsageligt baseret på C-sproget. C++ er næsten et supersæt af C-sprog (Kun nogle få programmer kan kompilere i C, men ikke i C++).
Så hvis en person først lærer C-programmering, vil det hjælpe ham til også at lære et hvilket som helst moderne programmeringssprog. Som læring C hjælpe med at forstå en masse af den underliggende arkitektur af operativsystemet. Som pointere, arbejde med hukommelsesplaceringer osv.
Kom i gang med C Lær C-grundlæggende og avancerede koncepter, og løs derefter praktiske problemer direkte i dit browservindue med Educatives interaktive færdighedssti Bliv C-programmør. Tilmeld dig på Educative.io med koden NØRD10 for at spare 10% på dit abonnement.
Forskellen mellem C og C++
C++ blev oprettet for at tilføje OOPs-konceptet til C-sproget, så de begge har meget ens syntaks, men begge er en smule forskellige fra hinanden. Følgende er nogle væsentlige forskelle mellem C og C++ programmeringssprog.
- C++ understøtter OOPs paradigme, mens C kun har proceduremæssigt koncept for programmering.
- C++ har undtagelseshåndteringsmuligheder. I C skal vi løse manuelt.
- Der er ingen referencer i C.
Der er mange flere forskelle mellem C og C++, som diskuteres her: Forskellen mellem C og C++
Begyndende med C-programmering
At skrive det første program i C
Følgende kode er et af de enkleste C-programmer, der vil hjælpe os med den grundlæggende syntaksstruktur i et C-program.
Eksempel:
C #include int main() { int a = 10; printf('%d', a); return 0; }> Produktion
10>
Lad os analysere strukturen af vores program linje for linje.
C-programmets opbygning
Efter ovenstående diskussion kan vi formelt vurdere strukturen af et C-program. Med struktur menes det, at ethvert program kun kan skrives i denne struktur. At skrive et C-program i en hvilken som helst anden struktur vil derfor føre til en kompileringsfejl. Strukturen af et C-program er som følger:

Komponenter i et C-program:
1. Inkludering af headerfiler – Linje 1 [#include ]
Den første og fremmeste komponent er inkluderingen af Header-filerne i et C-program. En header-fil er en fil med filtypen .h, som indeholder C-funktionsdeklarationer og makrodefinitioner, der skal deles mellem flere kildefiler. Alle linjer, der starter med # behandles af en præprocessor, som er et program, der påkaldes af compileren. I ovenstående eksempel kopierer præprocessoren den forbehandlede kode for stdio.h til vores fil. .h-filerne kaldes header-filer i C.
Nogle af C Header-filerne:
- stddef.h – Definerer flere nyttige typer og makroer.
- stdint.h – Definerer heltalstyper med nøjagtig bredde.
- stdio.h – Definerer kerneinput- og outputfunktioner
- stdlib.h – Definerer numeriske konverteringsfunktioner, pseudo-tilfældig talgenerator og hukommelsesallokering
- string.h – Definerer strenghåndteringsfunktioner
- math.h – Definerer almindelige matematiske funktioner.
2. Hovedmetodeerklæring – Linje 2 [int main()]
Den næste del af et C-program er at erklære funktionen main(). Det er indgangspunktet for et C-program, og udførelsen begynder typisk med den første linje i main(). De tomme parenteser indikerer, at hovedenheden ikke tager nogen parameter (se det her for flere detaljer). Den int, der blev skrevet før main angiver returtypen for main(). Den værdi, der returneres af hovedenheden, angiver status for programafslutning. Se det her post for flere detaljer om returtypen.
3. Hovedmetodens brødtekst – Linje 3 til Linje 6 [omsluttet af {}]
Brødteksten af en funktion i C-programmet refererer til udsagn, der er en del af denne funktion. Det kan være alt som manipulationer, søgning, sortering, udskrivning osv. Et par krøllede parenteser definerer en funktions krop. Alle funktioner skal starte og slutte med krøllede parenteser.
4. Erklæring – Linje 4 [printf(Hello World);]
Udsagn er instruktionerne givet til compileren. I C afsluttes et udsagn altid med a semikolon (;). I dette særlige tilfælde bruger vi printf()-funktionen til at instruere compileren til at vise Hello World-tekst på skærmen.
5. Returerklæring – Linje 5 [retur 0;]
Den sidste del af enhver C-funktion er return-sætningen. Return-sætningen refererer til returværdierne fra en funktion. Denne returerklæring og returværdi afhænger af funktionens returtype. Returerklæringen i vores program returnerer værdien fra main(). Den returnerede værdi kan bruges af et operativsystem til at kende dit programs afslutningsstatus. Værdien 0 betyder typisk vellykket afslutning.
Hvordan udføres ovenstående program?
For at udføre ovenstående program skal vi først kompilere det ved hjælp af en compiler, og derefter kan vi køre den genererede eksekverbare. Der er online IDE'er tilgængelige gratis som Windows: Der er mange gratis IDE'er tilgængelige til udvikling af programmer i C som Kodeblokke og Dev-CPP . IDE'er giver os et miljø til at udvikle kode, kompilere den og til sidst udføre den. Vi anbefaler stærkt kodeblokke.
Anvendelse af C
- Operativsystemer: C er meget brugt til at udvikle operativsystemer som Unix, Linux og Windows.
- Indlejrede systemer: C er et populært sprog til udvikling af indlejrede systemer såsom mikrocontrollere, mikroprocessorer og andre elektroniske enheder.
- Systemsoftware: C bruges til at udvikle systemsoftware såsom enhedsdrivere, compilere og assemblere.
- Netværk: C er meget brugt til at udvikle netværksapplikationer såsom webservere, netværksprotokoller og netværksdrivere.
- Databasesystemer: C bruges til at udvikle databasesystemer som Oracle, MySQL og PostgreSQL.
- Gaming: C bruges ofte til at udvikle computerspil på grund af dets evne til at håndtere hardware-interaktioner på lavt niveau.
- Kunstig intelligens: C bruges til at udvikle kunstig intelligens og maskinlæringsapplikationer såsom neurale netværk og deep learning algoritmer.
- Videnskabelige applikationer: C bruges til at udvikle videnskabelige applikationer såsom simuleringssoftware og numeriske analyseværktøjer.
- Finansielle applikationer: C bruges til at udvikle finansielle applikationer såsom aktiemarkedsanalyse og handelssystemer.