- Paperback: 226 pages
- Publisher: O'Reilly Media; 1 edition (May 18, 2013)
- Language: English
- ISBN-10: 1449344186
- ISBN-13: 978-1449344184
- Product Dimensions: 7 x 0.5 x 9.2 inches
- Shipping Weight: 13.6 ounces (View shipping rates and policies)
- Average Customer Review: 47 customer reviews
- Amazon Best Sellers Rank: #141,829 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Understanding and Using C Pointers: Core Techniques for Memory Management 1st Edition
Use the Amazon App to scan ISBNs and compare prices.
The Amazon Book Review
Author interviews, book reviews, editors picks, and more. Read it now
Frequently bought together
Customers who bought this item also bought
Q&A with Richard Reese, author of "Understanding and Using C Pointers"
Q. Why is your book timely?
A. The C language continues to be a popular and widely used language. In addition, there are millions of lines of C code being maintained. Pointers are central to C and a solid understanding of them is important in crafting reliable and secure software. Understanding C pointers has always been important but they have not always been adequately covered. Their widespread usage in new and old applications begs a complete and comprehensive coverage.
Q. What do you hope that readers of your book will walk away with?
A. I hope that the experienced developer will be able to fill any holes in their understanding of C pointers. I hope that the less experienced developers will become more proficient and confident in their application of pointers.
Q. Can you give us a few tips on using pointers?
- Be careful when using pointers to void. If you cast a pointer to a pointer to void there is nothing preventing you from casting it to a different pointer type.
- When using function pointers the programmer must be careful to ensure it is used properly because C does not check to see if the correct parameters are passed.
- New code development should use the restrict keyword with most pointer declarations. This will enable better code optimization. Modifying existing code may not be worth the effort.
- Compilers do not always do a good job at reporting alias-related warnings. They can sometimes miss aliases and may sometimes report alias problems where they don't exist. It is ultimately up to the programmer to identify alias conditions.
- Remember NULL and NUL are different. NULL is used as a special pointer and is typically defined as ((void*)0). NUL is a char and is defined as '\0'. They should not be used interchangeably.
- Improperly aligned pointers can result in an abnormal program termination or retrieval of bad data. In addition, slower pointer access is possible if the compiler is required to generate additional machine code to compensate for the improper alignment.
About the Author
Richard Reese has worked in the industry and academics for the past 29 years. For 10 years he provided software development support at Lockheed and at one point developed a C based network application. He was a contract instructor providing software training to industry for 5 years. Richard is currently an Associate Professor at Tarleton State University in Stephenville Texas.
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
All too common with math and theoretical CS authors, many or most of whom are professional educators, is the attitude that brevity is beauty. Whether they are interested in instilling their ideas in the reader is not evident from their writing. Reese provides the right level of detail and a coherent exposition which develops a solid intuition without having to re-read his explanations.
The conceptual diagrams are helpful but a little ambiguous in referencing which rectangle is the function stack, which is main, and which is the heap. I hope the author improves the diagrams in his next edition. I do not deduct any stars because this book is much better than anything else, and it covers essential CS material.
The book is quick and easy enough to read that I'll probably scan through again in the future.
If you are really interested in C programming you should read this book and also the following book:
Expert C Programming: Deep C Secrets