#include<bits/stdc++.h>
using namespace std;
int t[27];
bool cmp(int x,int y){
return x>=y;
}
int main(){
t[1]=5;
t[4]=6;
sort(t,t+27,cmp);
for(int i=0;i<=6;i++)cout<<t[i]<<" ";
system("pause");
return 0;
}
当cmp中是x>y时,输出为:
6 5 0 0 0 0 0
当cmp中是x>=y时,输出为:
6421312 6 5 1 1 1 1
为什么会这样?