2017-11-10 2 views
0

에 정수로 변환 내가 이미 데이터/Types.pm하지만 to_decimal (1 시도소수점 펄

299.00 
179.40 
0.01 

처럼 소수점 형식에서 다음 정수 번호

29900 
17940 
1 

을 변환해야합니다, 2) return 1.00

+0

시도한 코드를 표시 하시겠습니까? 이것은 실제로 외부 모듈을 필요로하는 것이 아닙니다. –

+2

꽤 고급스러운 Perl을 github에서 보면, 당신은 거대한 얼굴의 손바닥을 가지고 있습니다. :) – simbabque

답변

11

Perl에는 integer, float 또는 string의 데이터 형식이 없습니다. 2 개의 십진수가있는 출력을 원하면 sprintf을 사용하여 포맷하십시오.

printf '%.02d', 29900/100; 

출력은 299.00입니다. printfsprintf과 비슷하지만 반환되는 대신 인쇄됩니다.

종류의 데이터에 대해 자세히 알아 보려면 perldata을 참조하십시오. Perl.


XS 및 C 레이어의 두드러기에는 물론 데이터 유형이 있습니다. 당신은 그들에 대해 perlguts에서 배울 수 있습니다. 그러나 더 높은 언어의 요지는 그러한 것들을 추상화하는 것입니다. 따라서 Perl 코드를 작성하는 것만으로도 그 코드가 존재하거나 작동하는 방식을 신경 쓸 필요가 없습니다.