#include int main (int argc, char *argv[]) { if (argc < 2) { printf ("put a positive integer as first argument\n"); return 0; } /* retriving array size from command string */ unsigned arr_size; sscanf (argv[1], "%u", &arr_size); if (arr_size == 0) { printf ("put a POSITIVE integer as first argument\n"); return 0; } printf ("creating array of %u integer(s)\n", arr_size); int i; int *array = new int [arr_size]; /* creating array of integers */ int *ptr = 0; /* initializing pointer with 0 */ for (i = 0; i < arr_size; i++) array[i] = i*2 + 1; ptr = array; printf ("now, ptr pointed to the 0th element of array: *ptr==%d array[0]==%d\n", *ptr, array[0]); ptr += (arr_size / 2); printf ("and now, ptr pointed to the CENTER of array: *ptr==%d array[%d]==%d\n", *ptr, arr_size / 2, array[arr_size / 2]); if (arr_size > 2) { ptr--; printf ("rollback poiter: *ptr==%d\n", *ptr); } printf ("deleting array\n"); delete [] array; return 0; }