小编Joe*_*ins的帖子

在main()之外处理argc和argv

如果我想保留用于处理命令行参数的大部分代码(用于组织和更易读的代码),那么最好的方法是什么?

void main(int argc, char* argv[]){
    //lots of code here I would like to move elsewhere
}
Run Code Online (Sandbox Code Playgroud)

c++ parsing arguments argv argc

8
推荐指数
1
解决办法
1万
查看次数

如何提高代码的精度

如何提高以下精度(精度)?

struct Degree_Minutes { signed int degrees; signed int minutes; double seconds; };
Degree_Minutes geo_dec_to_deg (double dec)
{
    Degree_Minutes degrees_minutes;
    signed int degrees, minutes;
    double remainder, temp, seconds;

    remainder = fmod(dec, 1);
    degrees_minutes.degrees = dec - remainder;
    temp = remainder*60;
    remainder = fmod(temp,1);
    degrees_minutes.minutes = temp-remainder;
    degrees_minutes.seconds = remainder*60;

    return degrees_minutes;
}

    double geo_deg_to_dec (Degree_Minutes degrees)
{
    double decimal = degrees.degrees + (degrees.minutes/60) + (degrees.seconds/60);
    return decimal;
}

int main(int argc, char **argv)
{
    Degree_Minutes deg;
    double decimal = 38.898556; …
Run Code Online (Sandbox Code Playgroud)

c++ floating-point precision floating-accuracy floating-point-precision

2
推荐指数
1
解决办法
380
查看次数