저는 VS 2012로 놀고 있었고 (적어도 저에게는) 매우 까다로운 문제를 보았습니다. 명령 행에서 입력에 수학 연산을하는 간단한 프로그램이 있습니다. 그러나 프로그램에 소수점과 함께 인수를 입력하면 소수점 이하의 숫자를 잊어 버릴 것입니다.C에서 char에서 int로 소수점 이하 자릿수로 변환
test 52.2 44.6
반환하는 대신 96.8의 96
double result = add(argv[1], argv[2]);
printf("%f \n", result);
및 명령 줄에서 호출
double add (char const *inp, char const *inp2) { //addition function
double val = std::strtol(inp, NULL, 0);
double val2 = std::strtol(inp2, NULL, 0);
return val + val2;
}
다음 함수를 호출.
@rici는 더 나은 방법을 아마이 :이 답변으로 게시되어야한다, 코멘트가 아닙니다. –
@rici 오 예, strtod는 아마도 복식에 더 좋습니다! 감사합니다 –
@RemyLebeau : 그래, 네가 맞을 것 같아. 나는 게으르다. – rici