summaryrefslogtreecommitdiff
path: root/pointer_types4.c
blob: 5159eef3553adab9b479a1a4a1c34d98bda3dfbb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdio.h>

int main(int argc, const char *argv[])
{
  int i;
  char char_array[5] = { 'a', 'b', 'c', 'd', 'e' };
  int int_array[5] = { 1, 2, 3, 4, 5 };

  void *void_pointer;

  void_pointer = (void *) char_array;

  for (i = 0; i < 5; i++) {
    printf("[char pointer] points to %p, which contains the integer %c\n", void_pointer, *((char *) void_pointer));
    void_pointer = (void *) ((char *) void_pointer + 1);
  }

  void_pointer = (void *) int_array;

  for (i = 0; i < 5; i++) {
    printf("[integer pointer] points to %p, which contains the char '%d'\n", void_pointer, *((int *) void_pointer));
    void_pointer = (void *) ((int *) void_pointer + 1);
  }
  return 0;
}