Definiciones de funciones de C

Una definición de función especifica el nombre de la función, los tipos y el número de parámetros que espera recibir, y su tipo de valor devuelto.Una definición de función también incluye un cuerpo de función con las declaraciones de las variables locales, e instrucciones que determinan lo que hace la función.

Sintaxis

  • unidad de traducción:
    externo-declaración

    externo-declaración de la unidad de traducción

  • externo-declaración: /* Permitía solo en el ámbito externo (del archivo) *
    definición de función

    declaration

  • definición de función: El declarador de/* aquí es el declarador de función *
    instrucciónoptcompuestaatributo-seqoptde la declaración-lista de declaradoresoptde los declaración-especificadores

    /* atributo-seq es Microsoft Específico *

Los parámetros de prototipo son:

  • declaración-especificadores:
    declaración-especificadores de almacenamiento-clase-especificador opt

    declaración-especificadores de especificador de tipo opt

    declaración-especificadores calificador de tipo opt

  • declaración-lista:
    declaración

    declaración de la declaración-lista

  • declarator:
    directo-declaranteoptde puntero

  • directo-declarante: Declarador de la función de/* A *
    declarador de nuevo estilo de**)** /*de la parámetro-tipo-lista de**(** de directo-declarante *

    declarador de Obsoleto-estilo de**)** opt/*de la identificador-lista de**(** de directo-declarante *

La lista de parámetros en una definición utiliza esta sintaxis:

  • parámetro-tipo-lista: Lista de parámetros de/* The *
    parameter-list

    parameter-list,…

  • parameter-list:
    parámetro-declaración

    parámetro-declaraciónde**,** de parameter-list

  • parámetro-declaración:
    declarador de los declaración-especificadores

    los declaración-especificadores resumen el declarador opt

La lista de parámetros en una definición de función heredada utiliza esta sintaxis:

  • identificador-lista: /* Utilizado en definiciones de función y declaraciones de obsoleto-estilo *
    identifier

    identificador de**,** de la identificador-lista

la sintaxis para el cuerpo de la función es:

  • instrucción compuesta: cuerpo de la función de/* The *
    { declaration-instrucción-listaoptopt**}**de lista

Los únicos especificadores de clase de almacenamiento que pueden modificar una declaración de función son extern y Estática.el especificador de extern significa que la función se puede hacer referencia de otros archivos; es decir, el nombre de función se exporta al vinculador.el especificador de Estática significa que la función no se puede hacer referencia de otros archivos; es decir, el nombre no es exportado por el vinculador.Si ninguna clase de almacenamiento aparece en una definición de función, se supone extern .En cualquier caso, la función siempre es visible del punto de definición al final del archivo.

Los declaración-especificadores opcionales y declarator obligatorio juntos especifican el tipo de valor devuelto y el nombre de la función.declarator es una combinación del identificador que los nombres de función y paréntesis después del nombre de la función.el no terminal atributo- seq opcional es una característica Microsoft-específica definido en Atributos de función.

El directo-declarante (en la sintaxis de declarator ) especifica el nombre de la función que se define y los identificadores de sus parámetros.si el directo- declarante incluye una parámetro-tipo- lista, la lista especifica los tipos de todos los parámetros.Tal declarador también actúa como un prototipo de función para las llamadas posteriores a la función.

declaration en la declaración-lista en definiciones de función no puede contener un almacenamiento-clase-especificador distinto de Registrarse.El especificador de tipo en la sintaxis de los declaración-especificadores puede omitir sólo si la clase de almacenamiento de Registrarse se especifica para un valor de tipo de int .

La instrucción compuesta es el cuerpo de la función que contiene declaraciones de variable local, referencias a elementos externamente declarados, e instrucciones.

Las secciones Atributos de función, clase de almacenamiento, Tipo de valor devuelto, parámetros, y cuerpo de la función describen los componentes de la definición de función en detalle.

Vea también

Conceptos

Funciones (c)