/* * Demo C arrays. * * Jed Yang */ #include #include int main(void) { //int array[6]; int *array; array = malloc(sizeof(int) * 6); // TODO: check malloc's return value int val; val = array[2]; //printf("%d\n", val); // gibberish for (int i = 0; i < 6; i++) { array[i] = 370 + i; } val = array[2]; printf("%d\n", val); // 372 int *ptr; ptr = array + 3; printf("%d\n", *ptr); // 373 *ptr = 0; // change 373 to 0 ptr++; printf("%d\n", *ptr); // 374 printf("%p %p %li\n", ptr, array, ptr-array); // 4, scaled properly for (ptr = array; *ptr; ptr++) { printf("%i ", *ptr); } // prints "370 371 372 " // common to use "0" to terminate, we will see this with strings again printf("\n"); free(array); return 0; }