Re: [Grulic-dev] manipulacion de argc/argv

Página superior
Adjuntos:
+ (text/plain)
Eliminar este mensaje
Responder a este mensaje
Autor: Marcos Dione
Fecha:  
A: Maxi Combina
Cc: grulic-dev
Asunto: Re: [Grulic-dev] manipulacion de argc/argv
me olvidé de responder el mail en si...

On Fri, Nov 24, 2006 at 11:25:39AM -0300, Maxi Combina wrote:
> int main(int argc, char* argv[])
> {
> if (argc == 1){
>     argv[1] = malloc(2*sizeof(char));
>     argv[1][0] = argv[1][1] = '\0';
>     argc++;
> }

>
> // resto del codigo que depende de argc/argv
>
> return 0;
> }
>
> O sea, la duda es si es correcto hacer un malloc dentro del programa,
> reservar memoria, hacer que arvg[i] (i == 1 en este caso) apunte a esa
> memoria, y usarlo "como si nada"? Hay que hacer free(argv[1]) despues?


    nadie te asegura que haya espacio reservado para argv[1], por lo que
potencialmente estás haciendo buffer overrun.


--
(Not so) Random fortune: