【发布时间】:2015-05-27 21:16:48
【问题描述】:
它似乎没有对所有数字进行排序。有些完全消失了。
void sort ()
{
int i = 0, l = 0;
while(i < myclass.d_arr_size)
{
if(myclass.d_arr[i] <= myclass.d_arr[l])
{
myclass.d_arr[i] = myclass.d_arr[l];
i++;
} else (l < myclass.d_arr_size) ? (l++) : (l=0, i++);
}
}
怎么了?
【问题讨论】:
-
this =>
} else (l < myclass.d_arr_size) ? (l++) : (l=0, i++);可能是错误的来源,并不友好。让你的代码简单易读,调试起来也很简单 -
在您的
if语句中,您将myclass.d_arr[i]的值设置为myclass.d_arr[l],但是myclass.d_arr[i]的原始值似乎没有发生任何变化。这可能是数字消除发生的地方。 -
对不起,你不是覆盖数据吗?
-
你忘记调试了。