Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: str0nghack en 15 Febrero 2018, 16:06 pm



Título: un programa puede tener varios main?
Publicado por: str0nghack en 15 Febrero 2018, 16:06 pm
me he descargado el source code de Agobot  y veo varios main, algunos de ellos en distintas carpetas....


¿como se conectan varios main entre si?


Título: Re: un programa puede tener varios main?
Publicado por: ivancea96 en 17 Febrero 2018, 13:39 pm
Un ejecutable solo tiene 1 punto de entrada.
Ahora bien, depende de qué partes quieras linkear en tu programa, puedes decirle al linker cuál quieres que sea la función por la que empiece el programa.


Título: Re: un programa puede tener varios main?
Publicado por: str0nghack en 17 Febrero 2018, 19:29 pm
Un ejecutable solo tiene 1 punto de entrada.
Ahora bien, depende de qué partes quieras linkear en tu programa, puedes decirle al linker cuál quieres que sea la función por la que empiece el programa.
Podrías poner un ejemplo?

lo que si se hacer es separar el programa en  en ficheros o cabeceras pero eso que me acabas de decir es completamente nuevo para mi


Título: Re: un programa puede tener varios main?
Publicado por: ivancea96 en 18 Febrero 2018, 21:43 pm
No tiene mucho tema.
El main es solo una función más. En el proceso de linking, se utiliza como punto de entrada.

Luego, no sé cómo está estructurado Agobot, pero si tiene varios mains, tendrán alguna razon, ya sea porque son varios ejecutables, o la razón que sea.

(Intuyo que hablas de funciones main, y no de archivos llamados "main.cpp")


Título: Re: un programa puede tener varios main?
Publicado por: str0nghack en 20 Febrero 2018, 20:43 pm
No tiene mucho tema.
El main es solo una función más. En el proceso de linking, se utiliza como punto de entrada.

Luego, no sé cómo está estructurado Agobot, pero si tiene varios mains, tendrán alguna razon, ya sea porque son varios ejecutables, o la razón que sea.

(Intuyo que hablas de funciones main, y no de archivos llamados "main.cpp")

efectivamente me refiero a la funcion main, por ejemplo he visto empezar algunos programas por el procedimiento void start()