When reading a C-style character string from an input stream such as cin, what happens if the user types more characters than were originally allocated for the array?

a. The extra characters entered will be assigned to memory locations beyond the boundaries of the character array, most likely causing an error in the program.
b. The input will stop after the number of characters allocated for the array have been read, leaving the remaining characters in the input stream to be read later.
c. The program will display an error message and immediatly terminate.
d. The size of the character array will be automatically expanded to accommodate the extra characters.