c语言调试方法有哪些