2012-04-27 7 views
6

Duplicar posible:
C function syntax, parameter types declared after parameter listEn C, ¿qué significa cuando se declara una variable entre un encabezado de función y un cuerpo?

unas cuantas veces, me he encontrado un código como éste:

int 
main(argc, argv) 
int argc; char **argv; 
{ 
    ... 
} 

¿Por qué argc y argv declarado de esta manera?

+4

Significa que fue escrito alrededor de 1987 –

+0

@MichaelBurr: De hecho, parece ser un duplicado. Votando para cerrar. –

Respuesta

12

Esta fue la sintaxis que se usó para K & R * style listas de parámetros.

* K & R - Brian Kernighan y Dennis Ritchie, autores del libro, "The C Programming Language."
Dennis Ritchie fue también el creador del lenguaje de programación C y con Ken Thompson, el sistema operativo UNIX.

+0

¿Hay alguna ventaja de usar el estilo de K & R hoy? El enlace que publicó recomienda el estilo ANSI. –

+2

Incluso si su compilador aún lo admite, no use este estilo para el nuevo código. No puedo enfatizar eso con la fuerza suficiente. Además, actualicé el enlace para apuntar a Wikipedia, que es más informativo sobre el estilo y su historia. –

+2

No hay ventaja. Este es el antiguo estilo C pre-estándar, y aunque todavía es compatible, se considera obsoleto. –

Cuestiones relacionadas