我试图在2d数组中对元素进行排序,但在将值赋给k时,它会给出此错误.
"警告:赋值在没有强制转换的情况下从指针生成整数".
为什么我得到它,我该如何解决?
for(i=1;i<3;++i)
{
for(j=3-1;j>=1;--j)
{
if(a[j-1]>a[j])
{
k = a[j-1];
a[j-1]=a[j];
a[j] = k;
}
}
}
Run Code Online (Sandbox Code Playgroud)
您在访问元素时错过了一个索引.a[j], a[j-1]应该a[i][j], a[i][j-1]在所有地方.a[i]是指向2D数组中第i行第一个元素的指针.a[i][j]是索引处的元素i, j.
注意:虽然问题中未指定,但我几乎可以肯定它i, j, k是整数并且a是一个2D整数数组.