酷代码 AI
菜单
服务商

C++ 实现:从卫星导航 $gprmc 报文精准提取经纬度值

以下是使用 C++ 实现提取`$gprmc`报文中经纬度值的代码: ```cpp #include <iostream> #include <string> // 提取经纬度值的函数 void extractLatLong(const std::string &message) { int commaCount = 0; std::string lat = ""; std::string longt = ""; for (char c : message) { if (c == ',') { commaCount++; if (commaCount == 3) { // 提取纬度值 while (message[++c]!= ',') { lat += message[c]; } } if (commaCount == 5) { // 提取经度值 while (message[++c]!= ',') { longt += message[c]; } } } } std::cout << "纬度: " << lat << ", 经度: " << longt << std::endl; } int main() { std::string message = "$gprmc,123456.789,a,3015.2345,n,12030.5678,e,200.5,150.5,010523,10.5,e,a"; extractLatLong(message); return 0; } ``` 注意点: 1. 输入的报文格式需要严格符合给定的规则,否则可能导致提取错误。 2. 代码中未对提取的经纬度值进行有效性校验。 3. 可以考虑添加错误处理机制,以应对异常情况。 ######[AI写代码神器 | 385点数解答 | 2025-01-08 03:43:54]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]