Subversion Repositories Kolibri OS

Rev

Rev 4872 | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1.  
  2. /* @(#)w_exp2.c 5.1 93/09/24 */
  3. /*
  4.  * ====================================================
  5.  * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
  6.  *
  7.  * Developed at SunPro, a Sun Microsystems, Inc. business.
  8.  * Permission to use, copy, modify, and distribute this
  9.  * software is freely granted, provided that this notice
  10.  * is preserved.
  11.  * ====================================================
  12.  */
  13.  
  14. /*
  15. FUNCTION
  16.         <<exp2>>, <<exp2f>>--exponential, base 2
  17. INDEX
  18.         exp2
  19. INDEX
  20.         exp2f
  21.  
  22. ANSI_SYNOPSIS
  23.         #include <math.h>
  24.         double exp2(double <[x]>);
  25.         float exp2f(float <[x]>);
  26.  
  27. DESCRIPTION
  28.         <<exp2>> and <<exp2f>> calculate 2 ^ <[x]>, that is,
  29.         @ifnottex
  30.         2 raised to the power <[x]>.
  31.         @end ifnottex
  32.         @tex
  33.         $2^x$
  34.         @end tex
  35.  
  36.         You can use the (non-ANSI) function <<matherr>> to specify
  37.         error handling for these functions.
  38.  
  39. RETURNS
  40.         On success, <<exp2>> and <<exp2f>> return the calculated value.
  41.         If the result underflows, the returned value is <<0>>.  If the
  42.         result overflows, the returned value is <<HUGE_VAL>>.  In
  43.         either case, <<errno>> is set to <<ERANGE>>.
  44.  
  45. PORTABILITY
  46.         ANSI C, POSIX.
  47.  
  48. */
  49.  
  50. /*
  51.  * wrapper exp2(x)
  52.  */
  53.  
  54. #include "fdlibm.h"
  55. #include <errno.h>
  56. #include <math.h>
  57.  
  58. #ifndef _DOUBLE_IS_32BITS
  59.  
  60. #ifdef __STDC__
  61.         double exp2(double x)           /* wrapper exp2 */
  62. #else
  63.         double exp2(x)                  /* wrapper exp2 */
  64.         double x;
  65. #endif
  66. {
  67.   return pow(2.0, x);
  68. }
  69.  
  70. #endif /* defined(_DOUBLE_IS_32BITS) */
  71.