The merit of this book is that it at least keeps to its declared objective. However that is not to say that I agree with all that the author presents. Then there is a matter of an inadequate index. On page 402 we have a description of
fgets(). I checked for
gets()in the index without success (though
gets()is referred to in a net at the end of
fgets(). The note mentions the different behaviour between the two functions with respect to the new-line character but nowhere mentions that other vital difference - limiting the length of input.
However note that the author everywhere uses
scanf()(which is well known to be a cause of numerous bugs in programs. He pursues that old style of declaring function prototypes in the body of a function that is going to use them. Then where are the details of functions such as
strcpy()and
strlen()(but he does have his own
StringLen()function) to name but two? What is the purpose of have a substantial library of functions if you are going to replace them with your own versions providing the same functionality?
Then, despite the 1999 copyright date the author completely ignores (as far as I can see) the existence of
constand
volatile.
Another ill-conceived book that should certainly have been sent back for a rewrite at the technical review stage, though I question that it should ever have been acquired.