使用Qt写一个经纬度转度分秒的程序

该程序示例展示了如何用Qt库将浮点数表示的经纬度转换为度分秒格式。degreesToDMS函数将度数拆分成度、分和秒,并返回格式化的字符串。在main函数中,给定的纽约市中央公园的经纬度被转换并打印出来。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

当将经纬度表示为度分秒(DMS)格式时,经度和纬度的值将被拆分为度、分和秒的组合。下面是一个使用Qt编写的经纬度转度分秒格式的程序示例

#include <QtCore>

// 将度转换为度分秒格式
QString degreesToDMS(double degrees) {
    int d = static_cast<int>(degrees);
    double remainingMinutes = (degrees - d) * 60;
    int m = static_cast<int>(remainingMinutes);
    double remainingSeconds = (remainingMinutes - m) * 60;

    return QString("%1° %2' %3\"").arg(d).arg(m).arg(remainingSeconds, 0, 'f', 2);
}

int main() {
    double latitude = 40.7128; // 经度
    double longitude = -74.0060; // 纬度

    QString latitudeDMS = degreesToDMS(latitude);
    QString longitudeDMS = degreesToDMS(longitude);

    qDebug() << "纬度:" << latitudeDMS;
    qDebug() << "经度:" << longitudeDMS;

    return 0;
}

运行此程序,它将把给定的经纬度转换为度分秒格式并输出。

请注意,此示例假设输入的经纬度是以度为单位的浮点数。函数degreesToDMS将度拆分为度、分和秒,并将它们格式化为"度 分 秒"的字符串。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值