如何解决运行时错误:将无符号偏移量添加到0x602000000390溢出到0x60200000038c
我正在解决一个名为的问题。在排序数组中查找元素的第一个和最后一个位置 '''
void bin_search(vector<int>&nums,int target,int l,int h,int &a,int &b)
{
if(l>h)
return;
int mid= l + (h - l) / 2;
if(nums[mid]==target)
{
if(nums[mid-1]==target)
{
bin_search(nums,target,l,mid-1,a,b);
}
else
{
a=mid;
}
if(nums[mid+1]==target)
{
bin_search(nums,mid+1,h,b);
}
else
{
b=mid;
}
}
else if(nums[mid]<target)
{
bin_search(nums,b);
}
else
{
bin_search(nums,b);
}
}
class Solution {
public:
vector<int> searchRange(vector<int>& nums,int target) {
int a=-1;
int b=-1;
int l=0;
int h=nums.size()-1;
bin_search(nums,b);
return {a,b};
}
};
''' 这是我提交的代码,但我正在 行1034:字符34:运行时错误:将无符号偏移添加到0x602000000390溢出到0x60200000038c(stl_vector.h) 摘要:UndefinedBehaviorSanitizer:未定义行为/usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/stl_vector.h :1043:34 错误,我能够通过我的编译器和其他ID中的所有测试用例,但无法解决此错误 请提前帮助我
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。