cpp also use printf, cr does not need new line