Ved programmering kan der være fejl. En fejl er et uventet output af programmet. Disse fejl kan påvirke korrekt udførelse af programmet. Derfor er det nødvendigt at fjerne alle fejl. En fejl kaldes også som en fejl. Processen med at identificere fejl og rette dem kaldes debugging. Hvert programmeringssprog har en bestemt syntaks. Programmereren skal følge den rigtige syntaks for at skrive programmer. Når der er en syntaksefejl, kaldes den en syntaksefejl. En syntaksfejl opstår på kompileringstidspunktet. Den fejl, der opstår ved kørsel kaldes en runtime-fejl. Array out of bound, dykning ved nul, adgang til hukommelse, der ikke er tilgængelig, er nogle eksempler på runtime-fejl. Når du skriver et program, er der en række trin, der skal følges for at løse problemet. Denne metode kaldes en algoritme. Hvis programmets logik er forkert, giver det forkert output. Den slags fejl kaldes en logisk fejl. Denne artikel diskuterer forskellen mellem en syntaksfejl og en logisk fejl. Det vigtigste forskel mellem syntaksfejl og logisk fejl er det, syntaksfejlen opstår på grund af en fejl i syntaksen af en række af tegn eller tokens, der er beregnet til at blive skrevet på et bestemt programmeringssprog, mens logisk fejl er en fejl, der opstår på grund af fejlen i programalgoritmen eller logikken.
1. Oversigt og nøgleforskel
2. Hvad er syntaksfejl
3. Hvad er logisk fejl
4. Ligheder mellem syntaksfejl og logisk fejl
5. Sammenligning side ved side - Syntaksfejl vs logisk fejl i tabelform
6. Resume
Generelt skrives programmerne ved hjælp af programmeringssprog på højt niveau. C, Python, Java er nogle eksempler på programmeringssprog på højt niveau. Kildekoden er let at læse og forståelig af mennesker. Disse programmer er ikke forståelige af computeren. Computeren forstår kun maskinkode. Derfor konverteres det høje niveau til maskinkode ved hjælp af en compiler. Hvert programmeringssprog har eget sæt syntaks til at skrive programmet. Programmereren skal skrive programmet i henhold til den rigtige syntaks. Hvis ikke, vil det forårsage en fejl. Denne fejltype er kendt som en syntaksefejl. Denne fejl opstår på kompileringstidspunktet.
Det er let at identificere og fjerne syntaksfejl, fordi kompilatoren viser placeringen og typen af fejl. Når der er syntaksfejl, har kildekoden ikke oversat til maskinkoden. Derfor, for en vellykket udførelse, skal programmereren rette den syntaksefejl, der er specificeret af compileren. Nogle almindelige eksempler på syntaksfejl mangler semikoloner, manglende krøllede seler, ikke-erklærede variabler eller forkert stavede nøgleord eller identifikatorer. Hvis programmereren kun skriver int x uden semikolon, er det en syntaksfejl. Fejlskrivning af 'int' er en syntaksfejl. Derfor er det nødvendigt at følge den syntaks, der er relevant for programmeringssproget, når man skriver programmet. Programmet kompileres ikke, før syntaksfejlen er rettet. I et tolket sprog registreres en syntaksfejl under programudførelse, så det kan være sværere at differentiere syntaksfejl fra andre fejl.
Der skrives et program for at løse et problem. Derfor flyder det en algoritme for at løse den. En algoritme er en trin for trin-procedure til at løse et givet problem. Fejlene opstår på grund af en algoritmefejl er kendt som en logisk fejl. Et program med en logisk fejl får ikke programmet til at afslutte udførelsen, men den genererede output er forkert. Når der opstod en syntaksfejl, er det let at opdage fejlen, fordi kompilationen specificerer om fejltype og den linje, som fejlen opstår. Men det er svært at identificere en logisk fejl, fordi der ikke er nogen compiler-meddelelse. Outputet er forkert, også det udførte program. Derfor skal programmereren læse hver erklæring og identificere fejlen på egen hånd. Et eksempel på logisk fejl er forkert brug af operatører. Hvis programmereren brugte division (/) -operatør i stedet for multiplikation (*), er det en logisk fejl.
Syntaksfejl vs logisk fejl | |
En syntaksfejl er en fejl i syntaks af en sekvens af tegn eller symboler, der er beregnet til at blive skrevet på et bestemt programmeringssprog. | En logisk fejl er en fejl i et program, der får det til at fungere forkert, men ikke afslutter unormalt. |
Hændelse | |
En syntaksfejl opstår på grund af fejl i programsyntaxen. | En logisk fejl opstår på grund af en fejl i algoritmen. |
Opdagelse | |
I kompilerede sprog indikerer kompilationen syntaksfejl med placeringen og hvad fejlen er. | Programmereren skal selv registrere fejlen. |
Enkelhed | |
Det er lettere at identificere en syntaksfejl. | Det er relativt vanskeligt at identificere en logisk fejl. |
Der kan opstå fejl under programmeringen. Der er forskellige typer fejl. Kørselsfejl opstår ved kørsel. Nogle eksempler på runtime-fejl er dykning med nul, adgang til hukommelse, der ikke er tilgængelig. Syntaksfejl opstår på grund af syntaksfejl. De logiske fejl opstår på grund af en fejl i programmets logik. Forskellen mellem en syntaksefejl og en logisk fejl er, at syntaksfejlen opstår på grund af en fejl i syntaks af en sekvens af tegn eller tegn, der er beregnet til at blive skrevet på et bestemt programmeringssprog, mens en logisk fejl er en fejl, der opstår pga. til fejlen i programmet.
1.PGC-forelæsninger: Programmeringsfejl og -typer, syntaksfejl, kørselsfejl, logisk fejl, online-elever, 8. januar 2017. Findes her
2. "Syntaksfejl." Wikipedia, Wikimedia Foundation, 17. februar 2018. Tilgængelig her
3. "Logikfejl." Wikipedia, Wikimedia Foundation, 27. februar 2018. Tilgængelig her