Serial Echo code breakdown [beginner]

Thanks for the code, it is a lot easier to understand. One thing though, could you explain why char c has to be added to an empty string before printing it? Can't we just print it right away? Or is it because having the data stored in a string allows for a lenght check?