" Skriva i C eller C + + är som att springa en motorsåg med alla borttagna skyddsanordningar , " är ett citat som tillskrivs författaren Bob Gray . Medan C är inte riktigt lika farligt som Mr Gray antyder är det ett kraftfullt språk som ger programmeraren låg nivå tillgång till programmeringsmiljö utan många restriktioner . Författarna till C , Brian Kernighan och Dennis Ritchie , säger , " C behåller den grundläggande filosofi som programmerare vet vad de gör , det bara kräver att de anger sina avsikter tydligt . " Det är det som klart anger att ofta orsakar programmerare problem . Instruktioner
1
Börja array index med en nolla i C. Många programmerare börja använda en array med array_variable [ 1 ] , som faktiskt är den andra delen av matrisen . Det första elementet är array_variable [ 0 ] . Längs samma linjer , åtkomst till samma programmerare sedan ett element förbi i slutet av arrayen . För en grupp av 10 element , indexen varierar från 0 till 9 , inte 1 till 10. Åtkomst nedsänkt nummer 10 är åt det elfte elementet i arrayen , vilket inte existerar . Oavsiktligt tillgång minne utanför det angivna variabler kan orsaka ett program att avsluta onormalt - . Aldrig bra
2
Initiera variabler innan du använder dem . Ett vanligt fel i C-programmering är att använda en variabel innan du förvarar något i variabeln , vilket är särskilt besvärligt när det handlar om pekare . Till exempel , om du vill att summan av en serie siffror som anges av användaren , se till att initiera summan variabeln att börja på noll . Medan konstant och globala variabler standard till noll , andra variabler inte.
3
Använd symboliska konstanter eller konstanta variabler för att undvika slumptal i kroppen av ditt program . Till exempel, om bearbetning av en 15 elementgrupp , skapa en symbolisk konstant för storleken på din array istället för att använda 15 i kroppen av en for-loop . Om du ändrar storlek på din array , behöver du bara ändra den symboliska konstant. Detta undviker C programmeringsfel för att öka storleken på en array , men glömmer att behandla alla delar på grund av en konstant i för slingan .
4
Jämför värden med en == i C. = symbolen används för uppdrag som inte jämförelser och är ett knepigt fel att hitta i ett program . En if-sats som kontrollerar om en nämnare är noll innan du utför en division ska se ut så här :
if ( nämnare == 0 ) printf ( " Fel - kan inte dela med noll \\ n " ) ;
uttalande :
if ( nämnare = 0 ) printf ( " Fel - kan inte dela med noll \\ n " ) ;
sätter nämnaren variabeln till noll , då misslyckas om kolla eftersom uppdragen tar på värdet av vad som är tilldelad , noll i så fall . Du har nu skapat problem du kontrolleras för , nämnaren är noll eftersom du sätta den till noll Addera
.