с обновленной информацией, код ниже должен сделать трюк.
#include <iostream>
#include <string>
#include <algorithm>
#include <cstdlib>
int main(void)
{
std::string base("7.8.9.1.5.1.");
std::string check("7.8.9.1.5.1.100");
if (std::equal(base.begin(), base.end(), check.begin()) && check.find('.', base.size()) == std::string::npos)
{
std::cout << "val:" << std::atoi(check.c_str() + base.size()) << std::endl;
}
return 0;
}
РЕДАКТИРОВАТЬ: обновлено, чтобы пропустить случаи, когда есть больше точек после матча, atoi
все равно проанализировал бы и вернулзначение до .
.