如何解决如何在 C++ 程序中 ping 某个 ip
通常我只使用 system("ping 8.8.8.8");
命令,但我试图将信息存储在变量 (IP) 中,然后在 C++ 程序中使用 system ping 该 IP。
这看起来很简单,但是当我尝试执行代码时,它告诉我函数调用中的参数太多。有人可以帮我解决这个问题吗?
ImGui::PushItemWidth(100);
static char IP[64] = ""; ImGui::InputText("PING IP",IP,64);
ImGui::PopItemWidth();
if (ImGui::Button("ping test")) {
system("ping ",IP);
}
解决方法
system()
函数只接受一个参数,如其头文件所定义:
int system( const char* command );
它期望 shell 执行完整的命令字符串。
处理这种情况的最简单方法是连接 "ping"
字符串文字和 IP
变量。您可以在 C++ 中使用 std::string
而不是 char 数组很容易地做到这一点:
#include <iostream>
#include <string>
#include <cstdlib>
int main() {
std::string IP ("127.0.0.1");
std::string CMD ("ping " + IP);
std::system(CMD.c_str());
return 0;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。