Skip to main content

Wat is een compilatiefout?

Een compilatiefout is een fout bij het bouwen van een machinecodebestand voor een computertaal.Veel computertalen compileren hun broncode in machinecodebestanden voordat programma's kunnen worden gebouwd of uitgevoerd.Het meest voorkomende type compilatiefout is een basissyntaxisfout;Eén kleine fout kan veel problemen veroorzaken met de code.

De meest voorkomende objectgeoriënteerde programmeertalen, C ++ en Java , gebruik compilatie in een of andere vorm.Dit verschilt aanzienlijk van geïnterpreteerde talen, die de onbewerkte broncode tijdens runtime gebruiken om een programma uit te voeren.Een taal hoeft niet inherent objectgeoriënteerd te zijn om compileerbaar te zijn;C ++ kan bijvoorbeeld worden gestructureerd met behulp van objectgeoriënteerde of procedurele programmering.

De meest voorkomende oorzaak van compilatiefouten is een syntaxisfout.Syntaxisfouten zijn fouten in de vorm van de onbewerkte broncode, meestal veroorzaakt door enige schending van de principes van de computertalen.Deze fouten kunnen zo eenvoudig zijn als het vergeten van een puntkomma aan het einde van een code -regel, of zo complex als een array onjuist initialiseren.Meestal is het niet uiterst moeilijk om deze fouten te vinden en te diagnosticeren;De meeste compilers tonen de fouten wanneer ze worden aangetroffen en staan de vorming van machinecode niet toe totdat de fouten zijn vastgesteld.Verschillende talen gebruiken echter verschillende compilers, dus het is mogelijk dat een bepaald type compilatiefout in de ene taal aanwezig kan zijn, maar niet in de andere.

Afhankelijk van de gebruikte taal en compiler kan één compilatiefout als veel fouten verschijnen.Bijvoorbeeld, het vergeten van een puntkomma aan het einde van een lijn, wanneer een taal dit vereist, kan parsingfouten veroorzaken omdat de compiler niet weet wanneer een bepaalde lijn zou moeten eindigen.Deze parsingfout kan zich evenveel compilatiefouten manifesteren, waardoor het lijkt alsof er plotseling gruwelijke problemen zijn met de code in plaats van één kleine typefout.Over het algemeen kan zorgvuldige aandacht voor het gehoorzamen van de regels van een computertaal dit soort fouten voorkomen.Evenzo, als er een plotselinge aanval van compilatiefouten verschijnt, kan de ervaren programmeur meestal afleiden dat een enkele kleine fout de meeste van hen heeft veroorzaakt.

Een veel voorkomende misvatting van beginnende programmeurs is dat een compilatiefout een computer zal crashen, en ditis nooit het geval.Compilatiefouten zijn beperkt tot compilers, en het maken van machinecode veroorzaakt zelden problemen voor een volledig computersysteem.Geen enkel programma is waterdicht, inclusief een compiler, maar de kansen op het veroorzaken van problemen met een hele computer alleen door code op te stellen of een compilatiefout tegen te komen, is extreem klein.Zodra alle compilatiefouten zijn vastgesteld, is de kans groot dat een programma soepel zal verlopen, zoals het was bedoeld.