2014-07-13 3 views
3

C (C++이 아님)을 사용하고 있습니다.C 부동 소수점을 int로 변환합니다.

플로트 번호를 int으로 변환해야합니다. 가장 가까운 숫자로 반올림하고 싶지는 않습니다. 간단히 정수 부분 이후의 부분을 제거하기 만하면됩니다.

4.9 -> 4
         
 
  
          .9
         
  -> 4
+2

감사합니다 - 그냥 당신이 무슨 뜻인지 이해하지 못하는 당신이 –

+0

을 필요로 캐스트입니다 "int를 이진수"-'int'로 변환합니다. 이미 _is_ binary ... 아니면 바이너리 표현의 문자열로 변환하는 것을 의미합니까? '14'를''1110 ''로 변환하십시오. 어느 쪽이든 : 부동 소수점 숫자는 어떻게 변환에 들어 갔습니까? – mafso

+0

User 3195614의 대답을 읽은 후 : 아마도 정수로 나누는 정수가 정수가 될 수 있습니다. '5/2'는'2.5'가 아니라 C에서'2'로 평가됩니다. – mafso

답변

11
my_var = (int)my_var; 

과 마찬가지로 간단한 비슷 해요. 변수가 int 인 경우 기본적으로 필요하지 않습니다. C

int C = var_in_float; 

에서

+1

정말로 감사합니다! 그것은 효과가있다! 죄송합니다 질문이 너무 간단하다면, 나는 초보자입니다. – SergSoftwares

+2

음수 및 큰 숫자에 대해 원하는 /해야 할 일을해야합니다. 상황이 더 복잡 할 수 있습니다. 부동 소수점이 양수이고 플랫폼의 최대 정수보다 작은 경우 안전합니다. – Jakub

2

사용 그들은 변환됩니다 암시

이발에 대한 충분한
관련 문제