Forskel mellem GCC og CC Compiler

GCC vs CC Compiler

CC er det navn, der gives til kommandoen Compiler. Det bruges som standard compiler kommando til dit operativsystem og er også eksekverbar med den samme kommando. GCC er derimod GNU Compiler-operativsystemet. På systemer, der kører på GNU, er det almindeligt at finde CC som et link, så scripts kan bruge enten compiler ombytteligt og let. Der er forskellige forskelle observeret med hensyn til at bruge GNU compiler collection og CC compiler. Disse forskelle kan generelt grupperes i to hovedgrupper. En af disse er mere specifik, mens den anden gruppe er mere generisk.

forskelle

hovedforskellen mellem de to omhandler C-kompilatorer og C++ – kompilatorer. C++ – kompilatorerne accepterer C++ – programmer, men kompilerer ikke programmer i C vilkårligt. Dette er generelt sandt, selvom det har vist sig, at det er muligt at skrive en C-sprogkode i en delmængde, der kan forstås godt af C++, selv når mange C-programmer ikke er gyldige C++ – programmer. På den anden side accepterer C-kompilatorer C-programmer, men afviser de fleste af de C++ – programmer, der kører i dem. Årsagen til, at dette problem opstår, er, at de fleste C++ – programmer kører konstruktioner, der ikke er tilgængelige i C.

de tilgængelige biblioteker for disse programsprog afhænger stort set af sproget. C++ – programmer kan udføre på C-biblioteker, men dette er platformspecifikt. C-programmer på den anden side kan ikke bruge C++ – biblioteker; C++ har således en tendens til at have et større bibliotekssæt tilgængeligt end C.

på Solaris er objektkoden, der er produceret af compiler-kommandoen, ikke på nogen måde kompatibel med koden produceret af g++, da disse er to separate compilere, og deres konventioner vil variere. De vigtigste forskellige punkter er undtagelseshåndtering og mangling af navne. Det er dog vigtigt at bemærke, at navnemangling er vigtigt for at forhindre, at kompatible objekter knyttes sammen. Dette peger faktisk på, at brug af et bibliotek, der er udarbejdet i CC, har brug for, at hele programmet kompileres i CC. Hvis du har brug for at bruge et bibliotek, der er udarbejdet med CC og et andet med g++, skal der også foretages en genkompilering af biblioteker for at sikre den ønskede funktionalitet.

i kvaliteten af assembler, der genereres, er GCC, som er GNU Compiler-samlingen, ekstremt god til denne opgave. Indfødte kompilatorer fungerer dog til tider bedre. Intel-kompilatorer kan siges at have grundige optimeringer, der endnu ikke skal replikeres i GCC.

begge compilere er alle i alt nye til de nuværende standarder, selvom der er små forskelle mellem standardsprog og det sprog, som compileren understøtter. Disse standarder er (C++98, C++2003, C99). Ældre C89-support er tilgængelig i begge kompilatorer, og en forståelse af de forventede svar er afgørende for at sikre, at kompilatoren ruller ud som forventet. Alt i alt ser GCC ud til at være fokuseret på at gøre livet lettere på grund af udvidelser og justeringer, der kan gøres for at få det ønskede resultat.

oversigt

der er et problem med krydskompatibilitet af C-og C++ – kompilatorbiblioteker.

c++ – programmer kan udføre på C-biblioteker, men dette er platformspecifikt.

for at bruge et bibliotek, der er sammensat i CC, kræves det, at hele programmet kompileres med CC og ikke GCC.
Hvis du har et bibliotek kompileret i CC og g++, skal et af bibliotekerne kompileres igen.

GCC gør et fantastisk stykke arbejde med at skabe kvalitetssamlinger.

både CC og GCC i sprogfunktioner er gode i forhold til de nuværende standarder.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.