Tengo el siguiente código donde el error está en el operador ternario dentro de un bloque for
, debido a que si el caso es verdadero uso la sentencia continue
; que continua con la siguiente iteración del bucle.
Pero no funciona el operador dice que hay "error en la expresión antes del continue"
y no se cuál es el error que dice que es antes debido a que ya encapsulé las expresiones, ¿alguien sabe como solucionarlo ?
#include <iostream>
#include <string.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
using namespace std;
void aleatory_ip(long ip){
volatile int n1[ip];
volatile int n2[ip];
volatile int n3[ip];
volatile int n4[ip];
srand(time(NULL));
int j = 0;
int t = 0;
int k = 0;
for (int i = 0; i != ip; ++i)
{
n1[i] = 0 + rand() % (255);
n2[i] = 0 + rand() % (255);
n3[i] = 0 + rand() % (255);
n4[i] = 0 + rand() % (255);
}
for (int i = 0; i < ip ; ++i)
{
(n1[i] >= 0 and n1[i] <= 255) ? continue; : n1[i] = 0 + rand() % (255);
(n2[i] >= 0 and n2[i] <= 255) ? continue; : n2[i] = 0 + rand() % (255);
(n3[i] >= 0 and n3[i] <= 255) ? continue; : n3[i] = 0 + rand() % (255);
(n4[i] >= 0 and n4[i] <= 255) ? continue; : n4[i] = 0 + rand() % (255);
}
string IPs[ip];
string IPa[ip];
for (int i = 0; i != ip; ++i){
IPs[i] = to_string(n1[i]) + '.' +
to_string(n2[i]) + '.' +
to_string(n3[i]) + '.' +
to_string(n4[i]);
}
cout<<"[server:][$:created IPs]"<<endl;
for (int i = 0; i !=ip ; ++i){
if (IPs[i]=="127.0.0.0" )
continue;
if (IPs[i]=="0.0.0.0" )
continue;
if (IPs[i]=="3.0.0.0" )
continue;
if (IPs[i]=="15.0.0.0" )
continue;
if (IPs[i]=="56.0.0.0" )
continue;
if (IPs[i]=="10.0.0.0" )
continue;
if (IPs[i]=="192.168.0.0")
continue;
if (IPs[i]=="172.16.0.0" )
continue;
if (IPs[i]=="100.64.0.0" )
continue;
if (IPs[i]=="127.0.0.10" )
continue;
if (IPs[i]=="198.18.0.0" )
continue;
else{
IPa[j] = IPs[i];
j++;
}
}
for (int i = 0; i !=ip; ++i)
{
IPs[i] = IPa[i];
}
for (int i = 0; i != ip ; ++i)
{
t += sizeof(IPs[i]);
}
for (int i = 0; i < ip; ++i)
{
for (j = i+1; j < ip; ++j)
{
if(IPs[i] == IPs[j])
{
k = j;
while(k < ip)
{
IPs[k] = IPs[k+1];
++k;
}
--ip;
--j;
}
}
}
for (const auto &IP : IPs){
cout <<"[server:][aleatory_ip $]:"<< IP << '\n';
Sleep(1000);
}
}
void test_case(){
long T;
cin>>T;
aleatory_ip(T);
}
int main(){
test_case();
return 0;
}