如何解决反映图像,我不断收到UndefinedBehaviorSanitizer:SEGV在未知地址上
我正在制作一个过滤器程序,首先我做了一个灰度,并且效果很好。我的问题是在反射滤镜(反射滤镜,其中得到的图像就是将原始图像放在镜前所得到的图像)。我的代码都很好,但是我不确定为什么为什么我在未知地址上不断收到UndefinedBehaviorSanitizer:DEADLYSIGNAL和SEGV ...
#include "helpers.h"
#include <math.h>
// Convert image to grayscale
void grayscale(int height,int width,RGBTRIPLE image[height][width])
{
for (int i = 0; i < height - 1; i++)
{
for (int j = 0; j < width; j++)
{
int average = round(image[i][j].rgbtRed + image[i][j].rgbtGreen + image[i][j].rgbtBlue) / 3;
image[i][j].rgbtRed = average;
image[i][j].rgbtGreen = average;
image[i][j].rgbtBlue = average;
}
}
}
// Reflect image horizontally
void reflect(int height,RGBTRIPLE image[height][width])
{
for (int i = 0; i < height; i++)
{
for (int j = 0; j < (width / 2); j++)
{
RGBTRIPLE s = image[i][j];
image[i][j] = image[i][width - (j + 1)];
image[i][width - (j + 1)] = s;
}
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。