Bien, digamos que tengo b.exe, que toma un argumento de cadena. Quiero invocar b.exe dentro a.cpp, con el sistema:cómo pasar el argumento variable a exe?
string s1 = "hallo";
system("b.exe s1");
printf("s1 after invoke = %s",s1);
y este es el código en b.cpp:
int main(string s)
{
s = "hello world";
return 0;
}
lo que quiero es, cuando corro a. exe, la salida será:
s1 after invoke = hello world
¿es posible hacer eso? básicamente, solo quiero pasar una variable a un exe, pero debe ser por referencia, no solo por valor porque quiero que esa variable se procese y modifique dentro del exe que invoqué. Ya he buscado la solución en Internet, pero solo me proporciona la forma de pasar una variable por valor al exe, no por referencia ...
cualquier sugerencia será muy apreciada, pero si es posible, quiero la sugerencia en la forma del código de corrección anterior e incluir archivos, si los hay. gracias por su ayuda :)
Una pregunta clásica de la comunicación entre procesos! Una solución simple es compartir memoria entre los dos procesos. Si está utilizando Linux, busque 'mmap()' y vea programas de ejemplo. :-) – Stan