Я пытаюсь проверить, находится ли IP-адрес в диапазоне, выполнив операцию и с маской сети, этот код выдает мне следующую ошибку:
invalid conversion from ‘const char*’ to ‘uint32_t {aka unsigned int}’ [-fpermissive]
Я новичок в C ++, есть ли какое-либо решение для этого?
int main() {
uint32_t ip = "192.168.2.1";
// value to check
uint32_t netip = "192.168.2.0"; // network ip to compare with
uint32_t netmask = "255.255.255.0"; // network ip subnet mask
if ( (netip & netmask) == (ip & netmask)) {
// is on same subnet...
std::cout << "On the same subnet" << std::endl;
} else {
// not on same subnet...
std::cout << "Not on the same subnet" << std::endl;
}
}