developer tip

Double에서 절대 값을 얻는 방법-C-Language

copycodes 2021. 1. 7. 08:07
반응형

Double에서 절대 값을 얻는 방법-C-Language


나는 음의 double에서 절대 값을 원하고- abs함수는 자바 에서처럼 사용하기 쉽다고 생각 했지만 그렇지 않았습니다!

abs-function은 값이 3.8951이고 출력이 3.000000이기 때문에 int를 반환하는 것 같습니다.

double d1 = abs(-3.8951);
printf("d1: ...%lf", d1);

이 문제를 어떻게 해결할 수 있습니까? 즉, double.


fabs()(에서 math.h)를 사용 하여 다음에 대한 절대 값을 가져옵니다 double.

double d1 = fabs(-3.8951);

fabs대신 사용 abs하여 double(또는 float) 데이터 유형 의 절대 값을 찾습니다 . 기능에 대한 <math.h>헤더를 포함하십시오 fabs.

double d1 = fabs(-3.8951);

Java abs가 정수 또는 double로 작동하도록 메소드를 오버로드 할 수 있다는 점은 주목할 가치가 있습니다 . C에서는 오버로딩이 존재하지 않으므로 integer 대 double에 대해 다른 함수가 필요합니다.


내가 사용하는이 있음을 발견했다 cabs(double), cabsf(float), cabsl(long double), __cabsf(float), __cabs(double), __cabsf(long double)해결책이다


  //use fabs()
  double sum_primary_diagonal=0;
  double sum_secondary_diagonal=0;
  double difference = fabs(sum_primary_diagonal - sum_secondary_diagonal);

참조 URL : https://stackoverflow.com/questions/20956352/how-to-get-absolute-value-from-double-c-language

반응형