多项选择题

A.向缓冲区中写入超过缓冲区大小的数据会导致溢出发生
B.缓冲区溢出导致程序异常是因为覆盖了原来的合法数据
C.缓冲区溢出导致异常是因为写入了恰好等于缓冲区大小的特殊数据
D.缓冲区溢出是由于写入少量全零数据造成的
E.缓冲区溢出是由于写入恰好等于缓冲区大小的数据造成的