Red de conocimiento informático - Computadora portátil - ¿Qué significa char*a[]? ¿Cuál es la diferencia entre int main y void main?

¿Qué significa char*a[]? ¿Cuál es la diferencia entre int main y void main?

char*a[]

Es una matriz con el nombre a y el tipo de elemento es char* (es decir, un puntero a char). En la lista de parámetros, es equivalente a char**a porque la longitud de la primera dimensión puede degenerarse.

La diferencia entre int main y void main -

Los prototipos de función de entrada de programa en los estándares ISO C e ISO C++ son los siguientes:

C:

int main(void);

int main(int argc, char* argv[]);

C++:

int main ();

int main(int argc, char* argv[]);

El prototipo de función principal equivalente al prototipo anterior se ajusta al estándar. void main(); nunca fue no estándar. Pero ese código ya existía antes de que se desarrollara el estándar. Para ser compatible con este código, algunos compiladores (como el compilador de Microsoft C&C++) no generarán errores de compilación para esto. Otros compiladores (como GCC) tratan esto como un error de compilación. Por lo tanto, por motivos de portabilidad, no utilice void main().

El valor de retorno int en la función principal se devolverá a la persona que llama a main. Aunque formalmente main es la función principal, en la implementación de un lenguaje de plataforma específico, no es necesariamente la función de entrada real, como el programa de destino mainCRTStartup vinculado por Microsoft Linker, que es responsable de pasar parámetros e inicializar la biblioteca de tiempo de ejecución de C. El valor de retorno lo pasa y finalmente lo recibe la persona que llama (como el proceso principal o el sistema operativo) y refleja una semántica específica, generalmente 0 para una salida normal y no 0 para una salida de error.

int main(int argc, char* argv[]); entre los parámetros utilizados para pasar la línea de comando, argc es el número de elementos de la línea de comando y argv es el parámetro específico de la línea de comando.

----

↑2010-6-26 17:12

----

/forum.php? mod=redirect&goto=nextoldset&tid=63

/question/ 155584660.html

↑ Puede encontrar un ejemplo aquí.

====

[Conjunto de respuestas original]

↑ Se pueden encontrar ejemplos aquí.