报错信息:expected declaration or statement at end of input
中文解释:输入结尾应为声明或语句
你应该在你的代码中检查下面这三点
- 某一个函数或者变量是不是在使用之前没有声明。一般可能是你敲错了变量名。
- 某个地方是不是少了括号。这种情况,编译器一般会在最后一行代码报错,但错误很可能不在最后一行,要靠自己去找出来。
- 所提示句子中提到的函数的头文件没有加上。比如你用了math.h函数库里的函数,比如abs、sqrt、pow这些。
这是在写LeetCode-82.删除排序链表中的重复元素 II中遇到的问题
报错信息:==42==ERROR: AddressSanitizer: heap-buffer-overflow
中文解释:Address Sanitizer(ASan)是一个快速的内存错误检测工具。它所报告出的信息heap-buffer-overflow为堆缓冲区溢出。
你应该检查这一点
- 数组访问出错,即访问数组时越界,像大多数C、java、C++等语言,就是的数组下标为负数了或者超出预先分配的空间大小。
这是在写LeetCode上的剑指 Offer 30. 包含min函数的栈题中遇到的问题,作为刷题经验的记录。
报错点:在入栈一些元素后再连续出栈这些元素后,此时栈中没有元素时,当前栈中最小值minCur不存在,这个时候需要特判if(obj->top1 == 0) obj->minCur = 0·



