sort int decending

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • GraxGunz
    New Member
    • Jul 2011
    • 13

    sort int decending

    Code:
    // program to sort integer
    #include <iostream>
    #include <conio.h> // for getch()
    #include <stdlib.h> // for qsort
    
    using namespace std;
    
    
    int compare(const void *pVal2, const void *pVal1) 
        {
    	int val1 = *(int*)pVal1;
    	int val2 = *(int*)pVal2;
    	return (val1 - val2);   //cast back to some data type and be compared.
     }
    
    int main () {
      int i;
      int num1, num2, num3, num4, num5;
      
      cout <<"Enter five numbers to be sort: ";
      cin >> num1 >> num2 >> num3 >> num4 >> num5;
      // array to sort
      int arr[] = {num1, num2, num3, num4, num5};
      
      // call qsort
      qsort(arr, 5, sizeof(int), compare);
      
      // print sorted values
      for (i = 0; i < 5; i++)
         cout << arr[i] << " ";
    
      getch();
      return 0;
    }
    cpp newbie here....
    i do not understand what this paragraph mean... anyone can help me make it clear??

    Code:
    int compare(const void *pVal2, const void *pVal1) 
        {
    	int val1 = *(int*)pVal1;
    	int val2 = *(int*)pVal2;
    	return (val1 - val2);   //cast back to some data type and be compared.
     }
  • johny10151981
    Top Contributor
    • Jan 2010
    • 1059

    #2
    please take a look at function call by reference and function call by value

    Comment

    • GraxGunz
      New Member
      • Jul 2011
      • 13

      #3
      does it mean that variable 1 is always greater than variable 2? because the return value is val1 - val2? i'm confuse bout that...

      actually what this operator mean:
      *(int*)pVal1

      sorry, i just start learned cpp, still got a lot of stuff don't know...

      Comment

      Working...