Download presentation
Presentation is loading. Please wait.
Published byFay Kennedy Modified over 9 years ago
1
Computer Science: A Structured Programming Approach Using C1 Objectives ❏ To understand the relationship between arrays and pointers ❏ To understand the design and concepts behind pointer arithmetic ❏ To write programs using arrays and pointer arithmetic ❏ To better understand the design behind passing arrays to functions ❏ To understand the C implementation of dynamic memory ❏ To write programs using static and dynamic memory allocation ❏ To understand and implement ragged arrays (arrays of pointers) Chapter 10 Chapter 10 Pointer Applications Pointer Applications
2
Computer Science: A Structured Programming Approach Using C2 10-1 Arrays and Pointers The name of an array is a pointer constant to the first element. Because the array’s name is a pointer constant, its value cannot be changed. Since the array name is a pointer constant to the first element, the address of the first element and the name of the array both represent the same location in memory.
3
Computer Science: A Structured Programming Approach Using C3 FIGURE 10-1 Pointers to Arrays
4
Computer Science: A Structured Programming Approach Using C4 same a &a[0] a is a pointer only to the first element—not the whole array. Note
5
Computer Science: A Structured Programming Approach Using C5 The name of an array is a pointer constant; it cannot be used as an lvalue. Note
6
Computer Science: A Structured Programming Approach Using C6 FIGURE 10-2 Dereference of Array Name
7
Computer Science: A Structured Programming Approach Using C7 FIGURE 10-3 Array Names as Pointers
8
Computer Science: A Structured Programming Approach Using C8 FIGURE 10-4 Multiple Array Pointers
9
Computer Science: A Structured Programming Approach Using C9 To access an array, any pointer to the first element can be used instead of the name of the array. Note
10
Computer Science: A Structured Programming Approach Using C10 10-2 Pointer Arithmetic and Arrays Besides indexing, programmers use another powerful method of moving through an array: pointer arithmetic. Pointer arithmetic offers a restricted set of arithmetic operators for manipulating the addresses in pointers. Pointers and One-Dimensional Arrays Arithmetic Operations on Pointers Using Pointer Arithmetic Pointers and Two-Dimensional Arrays Topics discussed in this section:
11
Computer Science: A Structured Programming Approach Using C11 Given pointer, p, p ± n is a pointer to the value n elements away. Note
12
Computer Science: A Structured Programming Approach Using C12 FIGURE 10-5 Pointer Arithmetic
13
Computer Science: A Structured Programming Approach Using C13 Note a + n * (sizeof (one element)) a + n
14
Computer Science: A Structured Programming Approach Using C14 FIGURE 10-6 Pointer Arithmetic and Different Types
15
Computer Science: A Structured Programming Approach Using C15 FIGURE 10-7 Dereferencing Array Pointers
16
Computer Science: A Structured Programming Approach Using C16 The following expressions are identical. *(a + n) and a[n] Note
17
Computer Science: A Structured Programming Approach Using C17 Table 10-1Pointers and Relational Operators
18
Computer Science: A Structured Programming Approach Using C18 FIGURE 10-8 (Part I) Find Smallest
19
Computer Science: A Structured Programming Approach Using C19 FIGURE 10-8 (Part II) Find Smallest
20
Computer Science: A Structured Programming Approach Using C20 PROGRAM 10-1Print Array with Pointers
21
Computer Science: A Structured Programming Approach Using C21 PROGRAM 10-1Print Array with Pointers
22
Computer Science: A Structured Programming Approach Using C22 PROGRAM 10-2Pointers and the Binary Search
23
Computer Science: A Structured Programming Approach Using C23 PROGRAM 10-2Pointers and the Binary Search
24
Computer Science: A Structured Programming Approach Using C24 FIGURE 10-9 Pointers to Two-dimensional Arrays
25
Computer Science: A Structured Programming Approach Using C25 We recommend index notation for two-dimensional arrays. Note
26
Computer Science: A Structured Programming Approach Using C26 10-3 Passing an Array to a Function Now that we have discovered that the name of an array is actually a pointer to the first element, we can send the array name to a function for processing. When we pass the array, we do not use the address operator. Remember, the array name is a pointer constant, so the name is already the address of the first element in the array.
27
Computer Science: A Structured Programming Approach Using C27 FIGURE 10-10 Variables for Multiply Array Elements By 2
28
Computer Science: A Structured Programming Approach Using C28 PROGRAM 10-3Multiply Array Elements by 2
29
Computer Science: A Structured Programming Approach Using C29 PROGRAM 10-3Multiply Array Elements by 2
30
Computer Science: A Structured Programming Approach Using C30 PROGRAM 10-3Multiply Array Elements by 2
31
Computer Science: A Structured Programming Approach Using C31 PROGRAM 10-3Multiply Array Elements by 2
32
Computer Science: A Structured Programming Approach Using C32
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.