In the same way, p->str fetches whatever str points to; *p->str++ increments str after accessing whatever it points to (just like *s++ ); (p->str)++ increments whatever str points to; and *p++->str increments p after accessing whatever str points to.