Defining a macro to compare two values : Macro Function « Macro Preprocessor « C / ANSI-C

Home
C / ANSI-C
1.assert.h
2.Console
3.ctype.h
4.Data Structure Algorithm
5.Data Type
6.Development
7.File
8.Function
9.Language Basics
10.Macro Preprocessor
11.Math
12.math.h
13.Memory
14.Pointer
15.setjmp.h
16.signal.h
17.Small Application
18.stdio.h
19.stdlib.h
20.String
21.string.h
22.Structure
23.time.h
24.wctype.h
C Tutorial
C++
C++ Tutorial
Visual C++ .NET
C / ANSI-C » Macro Preprocessor » Macro FunctionScreenshots 
Defining a macro to compare two values
Defining a macro to compare two values


/*
The macro function can work with numerical values
of any type. The values can be variables, constants or expressions.
*/
#include <stdio.h>

#define COMPARE(x,y)   ((x)<(y)?-1:((x)==(y)?0:1))

int main()
{
  double a = 1.5;
  int n = 2;
  float z = 1.1f;
  printf("\n compare %lf (double) with %f (float): %d", a , z, COMPARE(a,z));
  printf("\n compare %lf (double) with %d (int): %d", a , n, COMPARE(a,n));
  printf("\n compare %d (int) with %f (float): %d", n , z, COMPARE(n,z));
  printf("\n compare \" n * a\" = %lf \n"
    " with \"n+1\" = to %d (double): %d",
     n*a , n+1, COMPARE(n*a,n+1));
  printf("\n");
}

           
       
Related examples in the same category
1.Defining a macro to output the value of an expressionDefining a macro to output the value of an expression
2.Generate a square tableGenerate a square table
3.Define small function in macro
4.Make string
5.Use marco for small function
6.Use macro to find the minor variable
7.Define Macro as simple function
8.Use Macro to check the int range
9.Use Macro to get the bigger int value
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.