Saturday, May 28, 2011

How Well Do You Know C?

Think you have mastered the ins and outs of the C language? Test your knowledge of the nuances of C by trying to determine what is printed by each of the following programs. All code is C99 and exhibits well-defined behavior. Answers and discussion follow.

Saturday, May 7, 2011

FlexeLint: A Modern Static Analyzer for C and C++

Static analysis is a powerful technique for quickly finding programming defects in the earliest stages of development and is especially useful for statically typed languages like C and C++. In this post I will discuss FlexeLint, a mature static analysis tool for C and C++ from Gimpel Software. Plenty of examples are provided to demonstrate many of the features and types of issues the tool can detect. Although it is impossible to cover everything about a tool as featureful as FlexeLint in a single post, I will attempt to provide firm understanding of what the tool is capable of and how it can improve the quality of your code. If you are a serious C or C++ programmer, you will greatly benefit by using static analysis and FlexeLint is one of the best, and least expensive, tools out there today.