Прежде всего, ignore
отбрасывает все символов до разделителя, а не только пробел.
Во-вторых, ignore
сбрасывает досимвол разделителя спецификатора, который может быть любым символом (не только символом новой строки), в то время как ws
игнорирует начальный пробел, пока не будет непробельный символ.
ТретийВ конце концов, символ новой строки '\n'
- это пробел, поэтому он будет отброшен манипулятором ws
.