[prev] [index] [next]

Dynamic Data Example (cont)

Suggestion #3: create vector after count read in

// how many elements in the vector
int numberOfElems;
scanf("%d", &numberOfElems);

// declare vector and fill from stdin
int i, *vector;
size_t numberOfBytes;
numberOfBytes = numberOfElems * sizeof(int);
vector = (int *)malloc(numberOfBytes);
assert(vector != NULL);
for (i = 0; i < numberOfElems; i++) {
	scanf("%d", &vector[i]);
}

Works unless the heap is already full  (very unlikely)