[C++] [PC] Variables int con system?

Por ejemplo, para probar escribo un programa que pones una IP y mediante system ordeno al PC que haga un ping a la ip correspondiente:

#include <iostream>

using namespace std;

main()
{
    int ip ;
    cout << "Escriba la ip a la que quiere hacer ping:" ;
    cin >> ip ;
    system("ping"ip);
    system("PAUSE");
}   


Y me da error: syntax error before ')' token

Alguien me puede ayudar?
Primero una ip no es un solo numero, con lo cual un int no te sirve, segundo system recibe una cadena. Cuando consigas coger la ip tienes que juntar toda la orden en una sola cadena y luego llamarla desde system.

int main()
{
string orden, ip ;
cout << "Escriba la ip a la que quiere hacer ping:" ;
cin >> ip ;
orden = string("ping ") + ip;
system(orden.c_str());
system("PAUSE");
}

algo asi.
Saludos
Gracias jejejeje ten en cuenta que soy un total novato.

Un saludo y gracias a Desarrollo por acogerme XD
hay un manual de programacion en C para principiantes llamado gorka urrutia,me lo lei porque tengo esa asignatura,descargalo que te servira
Si ese programa vas a usarlo en algun otro sistema diferente a Windows, busca otra solución porque System no te servirá, si vas a usarlo solo en Windows, adelante.

Nota: Creo que system, es exclusivo de DOS/Windows, no estoy seguro 100%
3r Ch4mp1 escribió:Si ese programa vas a usarlo en algun otro sistema diferente a Windows, busca otra solución porque System no te servirá, si vas a usarlo solo en Windows, adelante.

Nota: Creo que system, es exclusivo de DOS/Windows, no estoy seguro 100%

No, la función system es estandar. El problema es que la función system sólo sirve para enviar comandos al sistema, y el sistema puede variar, y por tanto los comandos que puedes enviar.
En este caso el sistema sería la consola de comandos de windows, por lo que si lo corres en linux, reconocerá el comando si este existe.
Por ejemplo, para listar los ficheros del directorio actual en windows y linux necesitamos comandos distintos, respectivamente:
system("dir")
system("ls")
5 respuestas