Trusted answers to developer questions
Trusted Answers to Developer Questions

Related Tags

c

What is logb in C?

Hassaan Waqar

Grokking Modern System Design Interview for Engineers & Managers

Ace your System Design Interview and take your career to the next level. Learn to handle the design of applications like Netflix, Quora, Facebook, Uber, and many more in a 45-min interview. Learn the RESHADED framework for architecting web-scale applications by determining requirements, constraints, and assumptions before diving into a step-by-step design process.

The logb function is defined in the <math.h> header file in C. It takes in a single parameter x of type double. It then computes the logarithm of x|x| using FLT_RADIX as the base and returns the result of the double type.

FLT_RADIX has a value of 2 in most platforms. Thus, the function performs similar to log2 for positive values.

The illustration below shows how the logb function works:

How does logb work?

Declaration

The logb function is defined as follows:

double logb(double x);

Parameters

The logb function takes a single value of type double as a parameter.

Return value

The logb function returns the computation of type double.

Error handling

The logb function returns special values for certain arguments:

x Return Value
0 -INFINITY
INFINITY +INFINITY
NaN NaN

Example

The following code snippet shows how we can use the logb function:

#include <stdio.h> // include header for printf
#include <math.h> // include header for logb
int main ()
{
double x, result;
x = 8.0;
result = logb(x);
printf("logb (%f) = %f.\n", x, result);
return 0;
}

The following code snippet shows how error handling in the logb function works:

#include <stdio.h> // include header for printf
#include <math.h> // include header for logb
int main ()
{
double x, y, result;
x = 0.0;
result = logb(x);
printf("logb (%f) = %f.\n", x, result);
y = INFINITY;
result = logb(y);
printf("logb (%f) = %f.\n", y, result);
return 0;
}

RELATED TAGS

c

CONTRIBUTOR

Hassaan Waqar
Copyright ©2022 Educative, Inc. All rights reserved

Grokking Modern System Design Interview for Engineers & Managers

Ace your System Design Interview and take your career to the next level. Learn to handle the design of applications like Netflix, Quora, Facebook, Uber, and many more in a 45-min interview. Learn the RESHADED framework for architecting web-scale applications by determining requirements, constraints, and assumptions before diving into a step-by-step design process.

Keep Exploring