La magia del string.find()

Iniciado por Kaxperday, 13 Noviembre 2015, 15:07 PM

0 Miembros y 1 Visitante están viendo este tema.

Kaxperday

Se solucionó, tenía que ver con esa igualdad que haces dentro de una condicion a la que hay que meter entre parentesis...

fue algo mágico de todas maneras:

Código que funciona:

Código (cpp) [Seleccionar]
void filtrar_pregunta_http(u_char* _datos, int _tamaño)
{
string paquete = string(reinterpret_cast<char*>(_datos), _tamaño);
int tamaño = _tamaño;
int pos = 0;
while ((pos = paquete.find("https://", pos)) != string::npos){
paquete.replace(pos, 5, "http");
tamaño--;
}
cout << "pos: " << pos << endl;
if ((pos = paquete.find("Accept-Encoding: ")) != string::npos){
int pas = pos;
while (paquete[pas] != '\n'){
printf("%c", paquete[pas]);
pas++;
}
paquete.erase(pos, pas - pos + 1);
}
cout << paquete.c_str() << endl;
}
Cuando el poder económico parasita al político ningún partido ni dictador podrá liberarnos de él. Se reserva el 99% ese poder.