Solution for Exercise 19-6
ex1906
#include <stdio.h>
int main()
{
int numbers[10];
int x;
int *pn;
pn = numbers; /* initialize pointer */
/* Fill array */
for(x=0;x<10;x++)
{
*pn=x+1;
pn++;
}
pn = numbers; /* re-initialize pointer */
/* Display array */
for(x=0;x<10;x++)
{
printf("numbers[%d] = %d, address %p\n",
x,*pn,pn);
pn++;
}
return(0);
}Output
numbers[0] = 1, address 0x7ffeef1359f0
numbers[1] = 2, address 0x7ffeef1359f4
numbers[2] = 3, address 0x7ffeef1359f8
numbers[3] = 4, address 0x7ffeef1359fc
numbers[4] = 5, address 0x7ffeef135a00
numbers[5] = 6, address 0x7ffeef135a04
numbers[6] = 7, address 0x7ffeef135a08
numbers[7] = 8, address 0x7ffeef135a0c
numbers[8] = 9, address 0x7ffeef135a10
numbers[9] = 10, address 0x7ffeef135a14
Notes
* The only difference between this code and the solution for Exercise 19-5 is the change from array notation numbers[x] to pointer notation *pn in Line 24.
Copyright © 1997-2026 by QPBC.
All rights reserved
