程序已退出,代码为0 (0x0).c++
The program has exited with code 0 (0x0). C++
我得到了这个错误。我正在使用OpenCV,我试图在单个图像中检测更多模板。下面是我的代码:
int main() {
cv::Mat ref = cv::imread("image.jpg");
for (int i = 0; i < numTemplates; i++){
cv::Mat tpl = cv::imread(names[i]);
if (ref.empty() || tpl.empty())
return -1;
cv::Mat gref, gtpl;
cv::cvtColor(tpl, gtpl, CV_BGR2GRAY);
cv::cvtColor(ref, gref, CV_BGR2GRAY);
cv::Mat res(ref.rows - tpl.rows + 1, ref.cols - tpl.cols + 1, CV_32FC1);
cv::matchTemplate(gref, gtpl, res, CV_TM_CCOEFF_NORMED);
cv::threshold(res, res, 0.8, 1., CV_THRESH_TOZERO);
while (true)
{
double minval, maxval, threshold = 0.8;
cv::Point minloc, maxloc;
cv::minMaxLoc(res, &minval, &maxval, &minloc, &maxloc);
if (maxval >= threshold)
{
cv::rectangle(
ref,
maxloc,
cv::Point(maxloc.x + tpl.cols, maxloc.y + tpl.rows),
CV_RGB(0, 255, 0), 2
);
cv::floodFill(res, maxloc, cv::Scalar(0), 0, cv::Scalar(.1), cv::Scalar(1.));
}
else
break;
}
}
cv::imshow("reference", ref);
cv::waitKey();
return 0;
}
退出代码是您的main
返回的值(有一些例外,例如它可能是发送给exit
函数的值)。返回值为0(通常)被认为是成功的信号。
作为练习,您可以尝试返回其他内容,并查看它将以另一个退出代码退出(但某些程序可能会将其视为程序的错误指示,因此随后将其更改为)。
相关文章:
- 瓦尔格林德错误 - 地址0x0不是堆叠的 malloc'd 或自由的
- 线程 1:xcode 中出现EXC_BAD_ACCESS(代码 = 1,地址 = 0x0)错误
- c++ Valgrind:地址0x0不是堆叠的、恶意的或(最近)释放的
- Xcode:线程1:exc_bad_access(代码= 1,地址= 0x0)在缩短列表时
- 线程 1:EXC_BAD_ACCESS(代码 = 1,地址 = 0x0)错误
- 例外:使用 C++ EXC_BAD_INSTRUCTION(代码 = EXC_I386_INVOP,子代码 = 0x0)
- 程序收到信号sigsegv,分段故障.在al_draw_tinted_bitmap中(bitmap = 0x0,tint
- 如何检查指针指向的地址是否0x0?
- qt5cored!qobject :: Disconnect ..在0x0处读取访问违规行为
- C++:尝试将新节点添加到链表会产生"线程 1:EXC_BAD_ACCESS(代码 = 1,地址 = 0x0)"错误
- (.bss+0x0):代理的多重定义
- C++序列集与get;get返回0x0
- 线程1:EXC_BAD_ACCESS(代码=1,地址=0x0)问题生成
- 线程1:EXC_BAD_ACCESS(代码=1,地址=0x0)
- 使用 swprintf() 打印"0x0"的格式字符串应该是什么?
- 错误的重新定位地址0x0在 python.data C 扩展中
- 为什么“this”等于0x0,导致我的程序崩溃
- 映射两个矢量元素并得到EXC_BAD_ACCESS(代码= 1,地址= 0x0)错误
- C++ this=0x0 在各种帧中进行回溯
- Qt读取访问在以下位置发生冲突:0x0,标志=0x0(第一次机会)