Understanding and Using C Pointers. Core Techniques for Memory Management
- Autor:
- Richard M Reese
- Ocena:
- Bądź pierwszym, który oceni tę książkę
- Stron:
- 226
- Dostępne formaty:
-
ePubMobi
Opis ebooka: Understanding and Using C Pointers. Core Techniques for Memory Management
Improve your programming through a solid understanding of C pointers and memory management. With this practical book, you’ll learn how pointers provide the mechanism to dynamically manipulate memory, enhance support for data structures, and enable access to hardware. Author Richard Reese shows you how to use pointers with arrays, strings, structures, and functions, using memory models throughout the book.
Difficult to master, pointers provide C with much flexibility and power—yet few resources are dedicated to this data type. This comprehensive book has the information you need, whether you’re a beginner or an experienced C or C++ programmer or developer.
- Get an introduction to pointers, including the declaration of different pointer types
- Learn about dynamic memory allocation, de-allocation, and alternative memory management techniques
- Use techniques for passing or returning data to and from functions
- Understand the fundamental aspects of arrays as they relate to pointers
- Explore the basics of strings and how pointers are used to support them
- Examine why pointers can be the source of security problems, such as buffer overflow
- Learn several pointer techniques, such as the use of opaque pointers, bounded pointers and, the restrict keyword
Wybrane bestsellery
-
Jeśli zależy Ci na tym, aby zdobyć rzetelną wiedzę i perfekcyjne umiejętności programowania z użyciem języka C++, powinieneś uczyć się od wybitnego eksperta i twórcy tego języka — Bjarne Stroustrupa, który jako pierwszy zaprojektował i zaimplementował C++. Podręcznik, który trzymasz w ręku,...
Programowanie. Teoria i praktyka z wykorzystaniem C++. Wydanie III Programowanie. Teoria i praktyka z wykorzystaniem C++. Wydanie III
(39.90 zł najniższa cena z 30 dni)74.50 zł
149.00 zł(-50%) -
Język C mimo upływu lat wciąż wydaje się niezastąpiony. Umożliwia pisanie zwięzłego kodu, który działa szybko mimo niewielkich zasobów sprzętowych. Choć wielu programistów używa C, trudno jest znaleźć eksperckie wskazówki dotyczące programowania w tym języku. Tymczasem w profesjonalnych zastosowa...
Mistrz języka C. Najlepsze zasady, praktyki i wzorce Mistrz języka C. Najlepsze zasady, praktyki i wzorce
(40.20 zł najniższa cena z 30 dni)43.55 zł
67.00 zł(-35%) -
Internet rzeczy nadal ewoluuje - i staje się coraz powszechniejszy, a to może być zachętą do tego, by poznać go bliżej. Internet rzeczy. Podstawy programowania aplikacji i serwerów sieciowych w językach C/C++, MicroPython i Lua na urządzeniach IoT ESP8266, ESP32 i Arduino może się okazać świetną ...
Internet rzeczy. Podstawy programowania aplikacji i serwerów sieciowych w językach C/C++, MicroPython i Lua na urządzeniach IoT ESP8266, ESP32 i Arduino Internet rzeczy. Podstawy programowania aplikacji i serwerów sieciowych w językach C/C++, MicroPython i Lua na urządzeniach IoT ESP8266, ESP32 i Arduino
(59.40 zł najniższa cena z 30 dni)64.35 zł
99.00 zł(-35%) -
Poznanie języka to jednak dopiero połowa sukcesu. Musisz też wiedzieć, jakie operacje w systemie wykonuje ten język. Do zbadania, jak działa kompilator i co dzieje się za kulisami, w książce tej wykorzystywana jest płytka rozwojowa Nucleo z niewielkim, tanim mikroukładem ARM. Dowiesz się, jak pra...
Język C w programowaniu urządzeń. Praktyczna nauka tworzenia kodu dla systemów wbudowanych Język C w programowaniu urządzeń. Praktyczna nauka tworzenia kodu dla systemów wbudowanych
(52.20 zł najniższa cena z 30 dni)56.55 zł
87.00 zł(-35%) -
Mimo że C - stworzony przez pracownika Laboratoriów Bella Dennisa Ritchiego - liczy sobie pół wieku, wciąż pozostaje niezwykle popularnym proceduralnym językiem ogólnego zastosowania. To dzięki niemu powstają elementy systemów operacyjnych i programów użytkowych. Tymczasem za sprawą Międzynarodow...(71.40 zł najniższa cena z 30 dni)
77.35 zł
119.00 zł(-35%) -
Niniejsza publikacja nie stanowi samodzielnego podręcznika do nauki języka C. Pomyślana jest raczej jako pomoc dla osób stawiających pierwsze kroki w nauce programowania. Przeznaczona jest dla studentów pierwszego roku Informatyki oraz Informatyki i ekonometrii. Początki nauki progr...
Podstawy programowania w języku C. Zadania z rozwiązaniami Podstawy programowania w języku C. Zadania z rozwiązaniami
-
Expert advice on C programming is hard to find. While much help is available for object-oriented programming languages, there's surprisingly little for the C language. With this hands-on guide, beginners and experienced C programmers alike will find guidance about design decisions, including how ...(186.15 zł najniższa cena z 30 dni)
186.15 zł
219.00 zł(-15%) -
This book takes you through basic programming concepts and shows you how C is a powerful general-purpose programming language that is excellent for beginners to learn. It goes beyond ANSI C and C99 to present some of the latest features of C.
Learn C Programming. A beginner's guide to learning the most powerful and general-purpose programming language with ease - Second Edition Learn C Programming. A beginner's guide to learning the most powerful and general-purpose programming language with ease - Second Edition
-
W tym podręczniku do praktycznej nauki programowania w języku C szczególną uwagę zwrócono na pisanie kodu umożliwiającego uzyskanie wysokiej wydajności w środowiskach o bardzo małych zasobach. Znalazło się tu gruntowne omówienie podstaw dobrego programowania w języku C. Opisano struktury kontroln...
Język C dla małych urządzeń. Krótki kod o wielkich możliwościach Język C dla małych urządzeń. Krótki kod o wielkich możliwościach
(40.20 zł najniższa cena z 30 dni)43.55 zł
67.00 zł(-35%) -
Ta książka stanowi przystępne wprowadzenie do tworzenia w języku C profesjonalnego kodu wysokiej jakości. Jest adresowana do każdego, kto chce szybko opanować umiejętność pisania poprawnego, przenośnego i bezpiecznego kodu. Ułatwia również zrozumienie kluczowych zagadnień związanych z programowan...
Efektywny C. Wprowadzenie do profesjonalnego programowania Efektywny C. Wprowadzenie do profesjonalnego programowania
(41.40 zł najniższa cena z 30 dni)44.85 zł
69.00 zł(-35%)
Kup polskie wydanie:
Wskaźniki w języku C. Przewodnik
- Autor:
- Richard Reese
22,45 zł
44,90 zł
(14.90 zł najniższa cena z 30 dni)
Ebooka "Understanding and Using C Pointers. Core Techniques for Memory Management" przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka "Understanding and Using C Pointers. Core Techniques for Memory Management" posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video "Understanding and Using C Pointers. Core Techniques for Memory Management" zobaczysz:
-
w aplikacjach Ebookpoint i Videopoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych z dostępem do najnowszej wersji Twojej przeglądarki internetowej
Szczegóły ebooka
- ISBN Ebooka:
- 978-14-493-4455-9, 9781449344559
- Data wydania ebooka:
- 2013-05-01 Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@ebookpoint.pl.
- Język publikacji:
- angielski
- Rozmiar pliku ePub:
- 3.7MB
- Rozmiar pliku Mobi:
- 8.6MB
Spis treści ebooka
- Understanding and Using C Pointers
- Preface
- Why This Book Is Different
- The Approach
- Audience
- Organization
- Summary
- Conventions Used in This Book
- Using Code Examples
- Safari Books Online
- How to Contact Us
- 1. Introduction
- Pointers and Memory
- Why You Should Become Proficient with Pointers
- Declaring Pointers
- How to Read a Declaration
- Address of Operator
- Displaying Pointer Values
- Virtual memory and pointers
- Dereferencing a Pointer Using the Indirection Operator
- Pointers to Functions
- The Concept of Null
- To NULL or not to NULL
- Pointer to void
- Global and static pointers
- Pointers and Memory
- Pointer Size and Types
- Memory Models
- Predefined Pointer-Related Types
- Understanding size_t
- Using the sizeof operator with pointers
- Using intptr_t and uintptr_t
- Pointer Operators
- Pointer Arithmetic
- Adding an integer to a pointer
- Pointers to void and addition
- Subtracting an integer from a pointer
- Subtracting two pointers
- Pointer Arithmetic
- Comparing Pointers
- Common Uses of Pointers
- Multiple Levels of Indirection
- Constants and Pointers
- Pointers to a constant
- Constant pointers to nonconstants
- Constant pointers to constants
- Pointer to (constant pointer to constant)
- Summary
- 2. Dynamic Memory Management in C
- Dynamic Memory Allocation
- Memory Leaks
- Losing the address
- Hidden memory leaks
- Memory Leaks
- Dynamic Memory Allocation
- Dynamic Memory Allocation Functions
- Using the malloc Function
- To cast or not to cast
- Failing to allocate memory
- Not using the right size for the malloc function
- Determining the amount of memory allocated
- Using malloc with static and global pointers
- Using the malloc Function
- Using the calloc Function
- Using the realloc Function
- The alloca Function and Variable Length Arrays
- Deallocating Memory Using the free Function
- Assigning NULL to a Freed Pointer
- Double Free
- The Heap and System Memory
- Freeing Memory upon Program Termination
- Dangling Pointers
- Dangling Pointer Examples
- Dealing with Dangling Pointers
- Debug Version Support for Detecting Memory Leaks
- Dynamic Memory Allocation Technologies
- Garbage Collection in C
- Resource Acquisition Is Initialization
- Using Exception Handlers
- Summary
- 3. Pointers and Functions
- Program Stack and Heap
- Program Stack
- Organization of a Stack Frame
- Program Stack and Heap
- Passing and Returning by Pointer
- Passing Data Using a Pointer
- Passing Data by Value
- Passing a Pointer to a Constant
- Returning a Pointer
- Pointers to Local Data
- Passing Null Pointers
- Passing a Pointer to a Pointer
- Writing your own free function
- Function Pointers
- Declaring Function Pointers
- Using a Function Pointer
- Passing Function Pointers
- Returning Function Pointers
- Using an Array of Function Pointers
- Comparing Function Pointers
- Casting Function Pointers
- Summary
- 4. Pointers and Arrays
- Quick Review of Arrays
- One-Dimensional Arrays
- Two-Dimensional Arrays
- Multidimensional Arrays
- Quick Review of Arrays
- Pointer Notation and Arrays
- Differences Between Arrays and Pointers
- Using malloc to Create a One-Dimensional Array
- Using the realloc Function to Resize an Array
- Passing a One-Dimensional Array
- Using Array Notation
- Using Pointer Notation
- Using a One-Dimensional Array of Pointers
- Pointers and Multidimensional Arrays
- Passing a Multidimensional Array
- Dynamically Allocating a Two-Dimensional Array
- Allocating Potentially Noncontiguous Memory
- Allocating Contiguous Memory
- Jagged Arrays and Pointers
- Summary
- 5. Pointers and Strings
- String Fundamentals
- String Declaration
- The String Literal Pool
- When a string literal is not a constant
- String Initialization
- Initializing an array of char
- Initializing a pointer to a char
- Initializing a string from standard input
- Summary of string placement
- String Fundamentals
- Standard String Operations
- Comparing Strings
- Copying Strings
- Concatenating Strings
- Passing Strings
- Passing a Simple String
- Passing a Pointer to a Constant char
- Passing a String to Be Initialized
- Passing Arguments to an Application
- Returning Strings
- Returning the Address of a Literal
- Returning the Address of Dynamically Allocated Memory
- Returning the address of a local string
- Function Pointers and Strings
- Summary
- 6. Pointers and Structures
- Introduction
- How Memory Is Allocated for a Structure
- Introduction
- Structure Deallocation Issues
- Avoiding malloc/free Overhead
- Using Pointers to Support Data Structures
- Single-Linked List
- Using Pointers to Support a Queue
- Using Pointers to Support a Stack
- Using Pointers to Support a Tree
- Summary
- 7. Security Issues and the Improper Use of Pointers
- Pointer Declaration and Initialization
- Improper Pointer Declaration
- Failure to Initialize a Pointer Before It Is Used
- Dealing with Uninitialized Pointers
- Pointer Declaration and Initialization
- Pointer Usage Issues
- Test for NULL
- Misuse of the Dereference Operator
- Dangling Pointers
- Accessing Memory Outside the Bounds of an Array
- Calculating the Array Size Incorrectly
- Misusing the sizeof Operator
- Always Match Pointer Types
- Bounded Pointers
- String Security Issues
- Pointer Arithmetic and Structures
- Function Pointer Issues
- Memory Deallocation Issues
- Double Free
- Clearing Sensitive Data
- Using Static Analysis Tools
- Summary
- 8. Odds and Ends
- Casting Pointers
- Accessing a Special Purpose Address
- Accessing a Port
- Accessing Memory using DMA
- Determining the Endianness of a Machine
- Casting Pointers
- Aliasing, Strict Aliasing, and the restrict Keyword
- Using a Union to Represent a Value in Multiple Ways
- Strict Aliasing
- Using the restrict Keyword
- Threads and Pointers
- Sharing Pointers Between Threads
- Using Function Pointers to Support Callbacks
- Object-Oriented Techniques
- Creating and Using an Opaque Pointer
- Polymorphism in C
- Summary
- Index
- About the Author
- Colophon
- Copyright
O'Reilly Media - inne książki
-
Software as a service (SaaS) is on the path to becoming the de facto model for building, delivering, and operating software solutions. Adopting a multi-tenant SaaS model requires builders to take on a broad range of new architecture, implementation, and operational challenges. How data is partiti...(237.15 zł najniższa cena z 30 dni)
245.65 zł
289.00 zł(-15%) -
Great engineers don't necessarily make great leaders—at least, not without a lot of work. Finding your path to becoming a strong leader is often fraught with challenges. It's not easy to figure out how to be strategic, successful, and considerate while also being firm. Whether you're on the...(118.15 zł najniższa cena z 30 dni)
126.65 zł
149.00 zł(-15%) -
Data science happens in code. The ability to write reproducible, robust, scaleable code is key to a data science project's success—and is absolutely essential for those working with production code. This practical book bridges the gap between data science and software engineering,and clearl...(211.65 zł najniższa cena z 30 dni)
220.15 zł
259.00 zł(-15%) -
With the massive adoption of microservices, operators and developers face far more complexity in their applications today. Service meshes can help you manage this problem by providing a unified control plane to secure, manage, and monitor your entire network. This practical guide shows you how th...(194.65 zł najniższa cena z 30 dni)
211.65 zł
249.00 zł(-15%) -
Get practical advice on how to leverage AI development tools for all stages of code creation, including requirements, planning, design, coding, debugging, testing, and documentation. With this book, beginners and experienced developers alike will learn how to use a wide range of tools, from gener...(177.65 zł najniższa cena z 30 dni)
164.25 zł
219.00 zł(-25%) -
Rust's popularity is growing, due in part to features like memory safety, type safety, and thread safety. But these same elements can also make learning Rust a challenge, even for experienced programmers. This practical guide helps you make the transition to writing idiomatic Rust—while als...(177.65 zł najniższa cena z 30 dni)
164.25 zł
219.00 zł(-25%) -
Advance your Power BI skills by adding AI to your repertoire at a practice level. With this practical book, business-oriented software engineers and developers will learn the terminologies, practices, and strategy necessary to successfully incorporate AI into your business intelligence estate. Je...(211.65 zł najniższa cena z 30 dni)
220.15 zł
259.00 zł(-15%) -
Microservices can be a very effective approach for delivering value to your organization and to your customers. If you get them right, microservices help you to move fast by making changes to small parts of your system hundreds of times a day. But if you get them wrong, microservices will just ma...(203.15 zł najniższa cena z 30 dni)
211.65 zł
249.00 zł(-15%) -
JavaScript gives web developers great power to create rich interactive browser experiences, and much of that power is provided by the browser itself. Modern web APIs enable web-based applications to come to life like never before, supporting actions that once required browser plug-ins. Some are s...(186.15 zł najniższa cena z 30 dni)
186.15 zł
219.00 zł(-15%) -
How will software development and operations have to change to meet the sustainability and green needs of the planet? And what does that imply for development organizations? In this eye-opening book, sustainable software advocates Anne Currie, Sarah Hsu, and Sara Bergman provide a unique overview...(160.65 zł najniższa cena z 30 dni)
169.14 zł
199.00 zł(-15%)
Dzieki opcji "Druk na żądanie" do sprzedaży wracają tytuły Grupy Helion, które cieszyły sie dużym zainteresowaniem, a których nakład został wyprzedany.
Dla naszych Czytelników wydrukowaliśmy dodatkową pulę egzemplarzy w technice druku cyfrowego.
Co powinieneś wiedzieć o usłudze "Druk na żądanie":
- usługa obejmuje tylko widoczną poniżej listę tytułów, którą na bieżąco aktualizujemy;
- cena książki może być wyższa od początkowej ceny detalicznej, co jest spowodowane kosztami druku cyfrowego (wyższymi niż koszty tradycyjnego druku offsetowego). Obowiązująca cena jest zawsze podawana na stronie WWW książki;
- zawartość książki wraz z dodatkami (płyta CD, DVD) odpowiada jej pierwotnemu wydaniu i jest w pełni komplementarna;
- usługa nie obejmuje książek w kolorze.
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka, którą chcesz zamówić pochodzi z końcówki nakładu. Oznacza to, że mogą się pojawić drobne defekty (otarcia, rysy, zagięcia).
Co powinieneś wiedzieć o usłudze "Końcówka nakładu":
- usługa obejmuje tylko książki oznaczone tagiem "Końcówka nakładu";
- wady o których mowa powyżej nie podlegają reklamacji;
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka drukowana
Oceny i opinie klientów: Understanding and Using C Pointers. Core Techniques for Memory Management Richard M Reese (0) Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.