By Ian F. Darwin

The lint software checker has confirmed repeatedly to be the most effective instruments for locating portability difficulties and likely forms of coding mistakes in C courses. This e-book introduces you to lint, courses you thru operating it in your courses, and permits you to interpretlint's output.lint verifies a software or application segments opposed to ordinary libraries, exams the code for universal portability error, and assessments the programming opposed to a few attempted and actual directions. linting your code is an important (though now not enough) step in writing fresh, moveable, potent programs.Contents include:

  • Overview of utilizing lint
  • Dealing with lint' issues: casting and delinting
  • lint comments
  • Using lint intimately: command line ideas, utilizing lint with make, rolling your personal lint library
  • Public area programs
  • Under the hood: an within look
  • Future directions

Show description

Read Online or Download Checking C programs with lint PDF

Best c & c++ windows programming books

Programming the Be operating system

The Be working procedure is a smart platform simply looking forward to purposes. This newbie programming consultant offers C++ programmers their begin to constructing these functions. a standard advisor to program improvement, this publication begins with the main easy recommendations and leaves you with an organization starting place for extra study.

The Design and Evolution of C++

The inventor of C++ provides the definitive insider's consultant to the layout and improvement of the C++ programming language. with out ommitting severe information or getting slowed down in technicalities, Stroustrup provides his exact insights into the selections that formed C++. each C++ programmer will make the most of Stroustrup's reasons of the 'why's' at the back of C++ from the earliest beneficial properties, akin to the unique category notion, to the newest extensions, equivalent to new casts and particular template instantiation.

Data Abstraction and Problem Solving with C++: Walls and Mirrors (3rd Edition)

This vintage ebook has been revised to extra increase its specialize in information abstraction and knowledge buildings utilizing C++. The ebook maintains to supply a company beginning in information abstraction, emphasizing the excellence among specification and implementation because the beginning for an object-oriented technique.

Checking C programs with lint

The lint application checker has confirmed repeatedly to be the most effective instruments for locating portability difficulties and sure kinds of coding error in C courses. This publication introduces you to lint, publications you thru operating it in your courses, and permits you to interpretlint's output. lint verifies a application or application segments opposed to common libraries, tests the code for universal portability mistakes, and exams the programming opposed to a few attempted and actual guidance.

Additional info for Checking C programs with lint

Sample text

As well, Syntax­Directed Editors (also called Program Synthesizers) have been claimed to prevent or reduce the errors that get into source programs in the first place; these are an obvious area where careful planning of the ''templates" used to specify valid input, and to provide automatic insertion of keywords, can reduce the number of careless constructs and hence reduce the number of complaints from lint. But none of these will replace the need for programmers to know their language well, to think while they are coding, and to exercise care when writing programs in any language.

If "always ignored", it's pretty safe to remove the return expression.  Look for functions that return (say) ­1 if some error is detected, but if all goes well finish execution without returning any value. See also the earlier notes on lint comment / NOTREACHED /. • long assignment may lose accuracy The "may lose accuracy" message occurs when when assigning a long value to a variable that is, or might be, shorter. Collyer's dirge: Woe unto you, for all the world is not a VAX!  Try this simple test: if (sizeof(int) == sizeof (long)) (void) printf ("All the world looks like a VAX\n"); else (void) printf ("I'd better be more careful\n"); Page 21 If you run this test, or code that depends on the same equality, on enough different computers, you will learn to be careful.

One of the exercise suggests ways of combining these checks.  I review the main pieces of the program and show by an example shell script how these pieces can be fitted together.  If you find that lint is an "executable," that is, the binary output of a compilation and loading process, read on right away.  C lib, Port lib, or none.  These correspond to the two passes of the portable C compiler—one to analyze the program, and another to generate the machine­specific instructions that implement the program in your computer.

Download PDF sample

Checking C programs with lint by Ian F. Darwin
Rated 4.44 of 5 – based on 8 votes