我想将“hostName:port”形式的 const char* hostName 与 const char* hostNameFinal 和数字端口分开。
我目前有以下代码:
const char* hostName = "localhost:643246";
long int port;
char hostNameChar[256];
sscanf(hostName, "%s:%d", hostNameChar, &port);
hostNameChar 的输出是:localhost:643246 port 的输出是一个疯狂的数字但不是 643246
有时端口的值太大,我应该使用哪种数据类型?如何正确匹配主机名,获得 2 个带有所需信息的变量?