Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - vangodp

#181
Me funciono este :D
Pinta muy bien.
Voy a buscar mas información a ver como es su funcionamiento.
Al parecer abre un proceso o algo por el estilo, aun no lo tengo muy claro.

#include <iostream>
#include <stdio.h>

using namespace std;

int main() {
FILE *in;
char buff[200];

if ( ! ( in = popen ( "ipconfig", "r" ) ) ) {
return 1;
}

while ( fgets ( buff, sizeof ( buff ), in ) != NULL ) {
cout << buff;
}

pclose ( in );

return 0;
}


http://www.sw-at.com/blog/2011/03/23/popen-execute-shell-command-from-cc/De aqui lo saque.
No creo que encontremos nada mejor :D
Gracias vaagish, eres un fiera  ;-)

version en cpp:
Código (cpp) [Seleccionar]

#include <iostream>
#include <stdio.h>

using namespace std;

int main() {
FILE *in;
char buff[512];

if(!(in = popen("ls -sail", "r"))){
return 1;
}

while(fgets(buff, sizeof(buff), in)!=NULL){
cout << buff;
}
pclose(in);

return 0;
}

#182
Cita de: TomasinSG en 13 Febrero 2014, 21:48 PM
¿no lo podrías almacenar en una variable?.

En una variable me refiero, un tipo string o algo.
Y no me refiero solo al caso de la ip.
Hay muchos comandos que retornan datos al que me interesaría guardar en un string o en una variable de otros tipos.  :¬¬
Por ejemplo:
En Delphi creo, hay una función según he leído que te ejecuta el comando y lo guarda el resultado en un string.
ExecuteDOSCommand(CommandLine:string)

No se como funciona exactamente por que no entiendo un pimiento de dhelphi XD, pero me parece la caña si se pudiera hacer eso en cpp. :rolleyes:
#183
joe.. para linux encontré eso en bash, es lo mismo, pero necesito para cpp XD

var=$(comando)

Nota: esta sintaxis es preferible a la antigua que utiliza estos caracteres: (`comando`)
Ejemplos

    Guardar de la salida estándar:
        únicamente stdout
            var=$(comando)
        stdout y stderr
            var=$(comando 2>&1)
        Guardar el código de retorno ($?)
            únicamente código de retorno
                comando
                var=$?
            Los dos
                var=$(comando)
                var=$?

:rolleyes:
#184
Es una forma.
La forma que comentas también sirve, no esta mal.
A ver si alguien sabe como hacer sin pasarlo a archivo.
Caso contrario sera la única solución.
Creo que no se puede, pero quien sabe. :D
Gracias vaagish.  ;-)
#185
Buenas compañeros.
Una pregunta sobre la consola.
Imagine que entro con un comando cualquier como ipconfig /all...
Lógicamente va a devolverme todo los numerillos de la red  :xD
Hay alguna forma de leer esos datos para hacer con ellos algo interesante como guardarlos o lo que sea?
Ya se que esta el comando netsh y otros para ip pero repito, la cuestión es: ¿Puedo leer esos datos?  :huh:
O otra cosa que pienso es si se puede leer esto y pasarlo a modo gráfico con alguna libreria como sdl(cosas mias vamosXD). :3
¡Gracias y saludo a los foreros! ;-)

PD: Uso XP por si necesitan saber, pero me vale también para 7 linux o lo que sea.
Lo que quiero es pillar la punta del hilo que no se por donde meter mano.
Cuando pongo leer datos por la consola me sale siempre leer desde teclado o me da cosas como el uso de int argc, char *argv[]. No se si es la única forma de hacer.
Si saben alguna pagina para poder entenderlo para dumies.
#186
Gracias eferion  ;-)
Voy a voy a guardar.
Y re leerlo muy tranquilamente.
¡Suerte! Si tienes mas consejillos no te corte  ;D
#187
C es lineal, c++ pega muchos mas saltos.
C también se desvía cuando creas funciones no inline, pero a cambio un programa en c++ puede ser un plato de macarrón. XD
La programación orientada a objetos pasa mayor factura.
Pero siempre puedes optimizar lo máximo :D
Si haces un programa que no salte de una función a otra esta claro que va ser mas eficiente.


#188
Eso es lo que comenta leo.
El problema es que todo lo que vas usar tienes que declararlo antes.
Una cosa que puedes hacer es entrar los datos como string y después hacerles un cast a int o float por ejemplo, a la hora de hacer un calculo.
Pero no le veo la necesidad a eso.
Tu lo dirás para que lo quieras.
tal vez estés formulando mal la pregunta.   ;)
#189
Programación C/C++ / Re: Hola Soy nuevo[DUDA]
7 Febrero 2014, 19:07 PM
No solo para separar el código.
printf("Hola usuario"); es una función. Estas usando la función printf() que imprime por pantalla la cadena de texto "Hola Usuario"

Algunas funciones pueden ser sencillas pero otras pueden ser muy muy complejas, llegando a superar con crece lo que puede contener en main.

Tu imaginación es el limite.

Una función hace algo.
Puede imprimir algo, o bien calcular números o muchas otras cosas.
;)
main() también es una funcion

main es un programa(principal), y a las demás funciones se les dice subprogramas.
Programas pueden llamar a subprogramas y a su vez subprogramas pueden llamar a otros subprogramas.
Todos juntos componen un programa(conjunto de programas y subprogramas) mas complejo.

Has usado una función(subprograma) dentro de otra ;)