C ++ Compiler forklaret: Hvad er compileren, og hvordan bruger du den?

Introduktion til C ++ - kompilatorer

For at komme i gang med C ++ skal du lære lidt om kompilatorer, og hvordan C ++ kører på din computer.

Når alt er sagt og gjort, forstår computere kun ét sprog, maskinsprog. Maskinsprog består udelukkende af binære bits eller 0s og 1s.

Selvom det ville være muligt at programmere binært, ville det være utrolig kedeligt og tidskrævende. Så vi mennesker udviklede programmeringssprog for at gøre det lettere at udvikle software.

Samlingssprog er direkte 1 til 1 med maskinsprog. Sprog som C, C ++ og COBOL er lidt højere og skal kompileres ned. Det går endnu højere. Sprog som JavaScript og Python har komponenter, der oversættes til C ++ eller andre sprog på lavt niveau, før de kompileres, hvilket effektivt gør dem til “højere” sprog end C eller C ++.

Da computerarkitektur består af elektroniske kontakter og kabler, der kun kan fungere med binære 1'er og 0'er, har du brug for en compiler til at oversætte din kode fra højt niveau C ++ til maskinsprog, som CPU'en kan forstå.

Sådan fungerer kompilatorer

Compilers er hjælpeprogrammer, der tager din kode og omdanner den til eksekverbare maskinkodefiler.

Når du kører en compiler på din kode, læser forprocessoren først kildekoden (C ++ - filen, du lige har skrevet). Forprocessoren søger efter eventuelle forprocessordirektiver (kodelinjer startende med et #). Preprocessor-direktiver får preprocessoren til at ændre din kode på en eller anden måde (ved normalt at tilføje et bibliotek eller en anden C ++ - fil).

Derefter arbejder compileren gennem den forbehandlede kodelinje ved linje, der oversætter hver linje til den relevante maskinsproglige instruktion. Dette afslører også syntaksfejl, der er til stede i din kildekode, og kaster en fejl til kommandolinjen.

Endelig, hvis der ikke er nogen fejl, opretter kompilatoren en objektfil med det binære maskinsprog, der er nødvendigt for at køre på din maskine. Mens objektfilen, som compileren lige har oprettet, sandsynligvis er nok til at gøre noget på din computer, er den stadig ikke en fungerende eksekverbar fil af dit C ++ - program. Der er et sidste vigtigt skridt for at nå et eksekverbart program.

C ++ indeholder et stort bibliotek, der hjælper med at udføre vanskelige opgaver som I / O og hardwaremanipulation. Du kan inkludere disse biblioteker med forprocessordirektiver, men forprocessoren føjer dem ikke automatisk til din kode.

For at du skal have et endeligt eksekverbart program, skal et andet værktøj kendt som linker kombinere dine objektfiler med de biblioteksfunktioner, der er nødvendige for at køre koden.

Tænk på det som at have alle de nødvendige blokke til at bygge et hus. Compileren lavede alle blokke, men linkeren er den, der klæber dem alle sammen for endelig at skabe et hus. Når dette er gjort, har du nu en fungerende eksekverbar fil!

Sådan kompileres en fil

Lad os sige, at du har en C ++ fil, der hedder helloWorld.cpp...

Hvis du bruger Windows

Brug og IDE som CodeBlocks

Det er så simpelt som at klikke på build- og run-knapperne, de opretter en fil i projektmappen.

img

Brug af kommandoprompt

  1. Åbn en kommandoprompt for udviklere - Til dette trin skal du have Microsoft Visual Studio eller en anden IDE, der giver dig mulighed for at kompilere dit program fra kommandolinjen. Du kan også søge online efter C ++ - kompilatorer.
  2. Naviger direkte til kildekoden
  3. Kør Compiler på din kildekode (forudsat at du bruger Microsoft Visual Studio compiler) cl /EHsc helloWorld.cpp

Dette opretter nu en objektfil og linker den automatisk til dig. Hvis du kigger i den samme mappe, vil du se en eksekverbar fil hellWorld.exe (bemærk exe-udvidelsen) er nu til stede.

  1. Skriv helloWorldi prompten for at køre den eksekverbare

Alternativt giver mange IDE'er mulighed for hurtig opbygning og visning af dit program. Dette kan være lettere, da din version af windows muligvis ikke leveres færdigpakket med et compiler-værktøj.

Hvis du bruger Linux eller OSX

  1. Åbn et terminalvindue, og naviger til kildekodekataloget
  2. Kør Compiler på din kildekode g++ helloWorld.cpp -o helloWorld

Dette opretter en objektfil og linker den automatisk til dig. Kig i mappen, og du vil se en eksekverbar fil helloWorld.exe (bemærk exe-udvidelsen).

  1. Indtast ./helloWorldterminalvinduet for at køre den eksekverbare fil

g ++ er standard Linux-kompilatoren og er et fantastisk værktøj. Den leveres pakket med operativsystemet.

BEMÆRK: For at kompilere og udføre din kode direkte, kør g++ -o helloWorld helloWorld.cpp; ./helloWorldså når du har brug for at kompilere og køre din kode flere gange, pil op-enter.

Der er en række forskellige typer kompilatorer. De to anførte er de to, der normalt er pakket med Windows eller Linux / OSX.

Mere info om C ++

  • Introduktion til C ++ programmering
  • Objektorienteret programmering i C ++
  • Grafalgoritmer og datastrukturer forklaret i C ++ og Java
  • Sådan kompileres din C ++ - kode i VS-kode