File: wncmp.c

package info (click to toggle)
libwn6 6.0-3
  • links: PTS
  • area: main
  • in suites: potato
  • size: 5,996 kB
  • ctags: 3,938
  • sloc: ansic: 45,083; makefile: 926; csh: 274; sh: 12
file content (99 lines) | stat: -rw-r--r-- 1,354 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
/**************************************************************************

int wn_intcmp(i1,i2)
int wn_ptrcmp(p1,p2)
int wn_boolcmp(b1,b2)
int wn_doublecmp(d1,d2)
int wn_pdoublecmp(pd1,pd2)

**************************************************************************/
/****************************************************************************

COPYRIGHT NOTICE:

  The source code in this file is provided free of charge
  to the author's consulting clients.  It is in the
  public domain and therefore may be used by anybody for
  any purpose.

AUTHOR:

  Will Naylor

****************************************************************************/
#include "wnlib.h"



int wn_intcmp(i1,i2)

int i1,i2;

{
  return(i1-i2);
}



int wn_ptrcmp(p1,p2)

ptr p1,p2;

{
  if((long unsigned int)p1 > (long unsigned int)p2)
  {
    return(1);
  }
  else if((long unsigned int)p1 == (long unsigned int)p2)
  {
    return(0);
  }
  else /* (long unsigned int)p1 < (long unsigned int)p2 */
  {
    return(-1);
  }
}



int wn_boolcmp(b1,b2)

bool b1,b2;

{
  return(wn_intcmp((int)b1,(int)b2));
}



int wn_doublecmp(d1,d2)

double d1,d2;

{
  if(d1 > d2)
  {
    return(1);
  }
  else if(d1 == d2)
  {
    return(0);
  }
  else /* d1 < d2 */
  {
    return(-1);
  }
}



int wn_pdoublecmp(pd1,pd2)

double *pd1,*pd2;

{
  return(wn_doublecmp(*pd1,*pd2));
}