" Schrijven in C of C + + is als het runnen van een kettingzaag met alle beveiligingen van de verwijderde , " is een citaat toegeschreven aan de auteur Bob Gray . Terwijl C is niet zo gevaarlijk als Mr Gray impliceert , het is een krachtige taal die de programmeur low - level toegang tot de programmeeromgeving biedt zonder veel beperkingen . De auteurs van C , Brian Kernighan en Dennis Ritchie , zeggen: " C behoudt de basisfilosofie dat programmeurs weten wat ze doen , het vereist alleen dat ze aangeven wat hun bedoelingen duidelijk . " Het is het uitdrukkelijk te verklaren dat veroorzaakt vaak programmeurs problemen . Instructies 1 Begin -array indices met een nul in C. Veel programmeurs beginnen met het openen van een array met array_variable [ 1 ] , dat is eigenlijk het tweede element van de array . Het eerste element is array_variable [ 0 ] . Langs dezelfde lijnen , dezelfde programmeur nu toegang tot een element voorbij het einde van de array . Voor een reeks van 10 elementen , de indices van 0 tot 9, laat 1 tot 10 . Toegang subscript nummer 10 is de toegang tot elfde element van de array, die niet bestaat . Onbedoeld toegang tot het geheugen buiten uw aangewezen variabelen kan leiden tot een programma om abnormaal te beëindigen - . Nooit een goede zaak kopen van 2 initialiseren variabelen voordat u ze gebruikt . Een veel voorkomende fout in C -programmering is om een variabele te gebruiken voordat er iets te slaan in de variabele , dat is bijzonder lastig in de omgang met pointers . Bijvoorbeeld , als je de som van een reeks getallen ingevoerd door de gebruiker wilt , moet u initialiseren het bedrag variabel te beginnen bij nul . Terwijl de constante en globale variabelen standaard op nul , andere variabelen niet doen . 3 Gebruik symbolische constanten of constante variabelen om willekeurige getallen in het lichaam van uw programma te voorkomen . Bijvoorbeeld, als het verwerken van een 15 element array, een symbolische constante voor de grootte van de array in plaats van de 15 in het lichaam van een lus . Als u de grootte van uw array te wijzigen , u hoeft alleen de symbolische constante veranderen . Dit voorkomt het C programmeerfout van het verhogen van de grootte van een matrix , maar vergeten om alle elementen vanwege een constante in de lus te verwerken . 4 Vergelijk waarden met een == in C. De = symbool wordt gebruikt voor opdrachten niet vergelijkingen en is een lastige fout te vinden in een programma . Een if-statement dat controleert of een noemer nul is voordat u een splitsing moet er zo uitzien : if ( noemer == 0 ) printf ( " Fout - kan niet delen door nul \\ n " ) ; < br > de verklaring : if ( noemer = 0 ) printf ( " Fout - kan niet delen door nul \\ n " ) ; stelt de noemer variabele op nul , dan faalt het als check sinds opdrachten nemen over de waarde van wat wordt toegewezen , in dit geval nul . Je hebt nu het probleem dat u gecontroleerd ; noemer nul is omdat je het op nul . |