study notes for c traps and pitfalls