Compartir a través de


Descripción de los argumentos

El parámetro argc en las funciones main y wmain es un entero que especifica el número de argumentos que se pasan al programa desde la línea de comandos. Como el nombre del programa se considera un argumento, el valor de argc es uno, por lo menos.

Comentarios

El parámetro argv es una matriz de punteros a cadenas finalizadas en null que representan los argumentos del programa. Cada elemento de la matriz señala a una representación de cadena de un argumento que se pasa a main o a wmain. (Para obtener información sobre matrices, vea Declaraciones de matriz). El parámetro argv se puede declarar como una matriz de punteros a tipo char (char *argv[]) o como un puntero para punteros a tipo char (char **argv). En el caso de wmain, el parámetro argv se puede declarar como una matriz de punteros a tipo wchar_t (wchar_t *argv[]) o como un puntero para punteros a tipowchar_t (wchar_t **argv).

Por convención, argv[0] es el comando con el que se invoca el programa. Sin embargo, es posible generar un proceso usando CreateProcess y, si utiliza el primero y segundo argumentos (lpApplicationName y lpCommandLine), argv[0] puede no ser el nombre ejecutable; utilice GetModuleFileName para recuperar el nombre ejecutable.

El último puntero (argv[argc]) es NULL. (Vea getenv en la Referencia de la biblioteca en tiempo de ejecución si desea un método alternativo para obtener información de variables de entorno).

Específicos de Microsoft

El parámetro envp es un puntero a una matriz de cadenas finalizadas en null que representan los valores establecidos en las variables de entorno del usuario. El parámetro envp se puede declarar como una matriz de punteros a char (char *envp[]) o como un puntero para punteros a char (char **envp). En una función wmain, el parámetro envp se puede declarar como una matriz de punteros a wchar_t (wchar_t *envp[]) o como un puntero para punteros a wchar_t (wchar_t **envp). El final de la matriz se indica mediante un puntero NULL*. El bloque de entorno que se pasa a main y a wmain es una copia "inmóvil" del entorno actual. Si, más adelante, cambia el entorno llamando a _putenv o a _wputenv, el entorno actual (devuelto por getenv/_wgetenv, o por las variables _environ o _wenviron) cambiará, pero no el bloque envp al que apunta. El parámetro envp es compatible con ANSI/ISO C89 en C, pero es una extensión de Microsoft en C++.

FIN de Específicos de Microsoft

Consulte también

Función main y ejecución del programa