//填充边界
int n = width + 2 * r;
int m = height + 2 * r;
float *im = new float[width*height];
memset(im,0,width*height*sizeof(float));
float *U = new float[m*n];
memset(U,0,m*n*sizeof(float));
for (int row = 0; row < m; row++)//height
{
for (int col = 0; col
//左上
if (row<=r && col<=r)
{
U[row*n + col] = im[0];// [(n * (row - r) + col - r)];
}
//正上方
if (col>=r&&col
U[row*n + col]= im[(width*0 + col-r )];
}
//左下
if (row >= m - r && col <= r)
{
U[row*n + col] = im[width*(height - 1)];
}
//下
if (col >= r && col=m - r)
{
U[row*n + col] = im[(height - 1)*width + col - r];
}
//右上
if (row<=r&& col >=n- r)
{
U[row*n + col] = im[width - 1];
}
//右下
if (col >= n - r && row >= m - r)
{
U[row*n + col] = im[width*height - 1];
}
//左
if (col=r&&row
U[row*n + col]= im[(width * (row - r))];
}
//右
if (col>=n-r&&row>r&&row
U[row*n + col] = im[(row-r)*width +width-1];
}
//中心
if (row >= r && row < m - r && col >= r && col < n - r)
{
U[(n* row + col)] = input[(width * (row - r) + col - r) ];
}
if (U[(n* row + col)]==0)
{
cout <<"cc="<< U[(n * row + col)] << endl;
}
//cout << U[(n * row + col)] << endl;
}
}