Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
qsort a user-defined type
#1
How qsort by age?

Code:
Copy      Help
type datt str'name str'address age

ARRAY(datt) adatt
adatt.create(3)
adatt[0].name="John"
adatt[0].address="street3, 10"
adatt[0].age=30
adatt[1].name="Anne"
adatt[1].address="street1, 20"
adatt[1].age=27
adatt[2].name="Michael"
adatt[2].address="street2, 15"
adatt[2].age=15
int i
for i 0 adatt.len
,out adatt[i].name
,out adatt[i].address
,out adatt[i].age
#2
Code:
Copy      Help
qsort &adatt[0] adatt.len sizeof(datt) &sort_datt

Function sort_datt:
Code:
Copy      Help
function[c] datt&d1 datt&d2

if(d1.age<d2.age) ret -1 ;;place d1 before
if(d1.age>d2.age) ret 1 ;;place d1 after
#3
Thanks.


Forum Jump:


Users browsing this thread: 1 Guest(s)