Mientras que el modo típico de usar un programa que lee de la
entrada estándar y escribe en la salida estándar es dentro de un
shell script
Unix™ o en un fichero
batch de
DOS™, cualquier programa se puede
llamar desde dentro de un programa C o C++ usando la llamada a
la función estándar system()
que está
declarada en el fichero de cabecera
<cstdlib>:
.
//: C02:CallHello.cpp // Call another program #include <cstdlib> // Declare "system()" using namespace std; int main() { system("Hello"); } ///:~
Listado 2.6. C02/CallHello.cpp
Para usar la función system()
, hay que
pasarle un array de caracteres con la línea de comandos que se
quiere ejecutar en el prompt del sistema operativo. Puede
incluir los parámetros que utilizaría en la línea de comandos, y
el array de caracteres se puede fabricar en tiempo de
ejecución (en vez de usar un array de caracteres estático como
se mostraba arriba). El comando se ejecuta y el control vuelve
al programa.
Este programa le muestra lo fácil que es usar C plano en C++; sólo incluya la cabecera y utilice la función. Esta compatibilidad ascendente entre el C y el C++ es una gran ventaja si está aprendiendo C++ y ya tenía conocimientos de C.