Partilhar via


Declaradores e declarações variáveis

O restante desta seção descreve a forma e o significado das declarações para tipos de variáveis resumidos nesta lista. Em particular, as restantes secções explicam como declarar:

Tipo de Variável Descrição
Variáveis simples Variáveis de valor único com tipo integral ou de vírgula flutuante
Arrays Variáveis compostas por uma coleção de elementos com o mesmo tipo
Ponteiros Variáveis que apontam para outras variáveis e contêm localizações de variáveis (na forma de endereços) em vez de valores
Variáveis de enumeração Variáveis simples com tipo integral que contêm um valor de um conjunto de constantes inteiras nomeadas
Estruturas Variáveis compostas por uma coleção de valores que podem ter diferentes tipos
Uniões Variáveis compostas por vários valores de diferentes tipos que ocupam o mesmo espaço de armazenamento

Um declarador é a parte de uma declaração que especifica o nome a ser introduzido no programa. Ele pode incluir modificadores como * (ponteiro para) e qualquer uma das palavras-chave da convenção de chamada da Microsoft.

Específico da Microsoft

Neste declarador,

__declspec(thread) char *var;

char é o especificador de tipo, __declspec(thread) e * são os modificadores, e var é o nome do identificador.

END Específico da Microsoft

Você usa declaradores para declarar matrizes de valores, ponteiros para valores e funções que retornam valores de um tipo especificado. Os declaradores aparecem nas declarações de matriz e ponteiro descritas posteriormente nesta seção.

Sintaxe

declarator:
pointer opte pordirect-declarator

direct-declarator:
identifier
( declarator )
direct-declarator [ constant-expression optar por]
direct-declarator ( parameter-type-list )
direct-declarator ( identifier-list optar por)

pointer:
* type-qualifier-list optar por
* type-qualifier-list optar porpointer

type-qualifier-list:
type-qualifier
type-qualifier-list type-qualifier

Observação

Consulte a sintaxe em declarationVisão geral das declarações ou Resumo da sintaxe da linguagem C para a sintaxe que faz referência a um declaratorarquivo .

Quando um declarador consiste em um identificador não modificado, o item que está sendo declarado tem um tipo base. Se um asterisco (*) aparecer à esquerda de um identificador, o tipo será modificado para um tipo de ponteiro. Se o identificador for seguido por colchetes ([ ]), o tipo será modificado para um tipo de matriz. Se os parênteses seguirem o identificador, o tipo será modificado para um tipo de função. Para obter mais informações sobre como interpretar a precedência em declarações, consulte Interpretando declaradores mais complexos.

Cada declarante declara pelo menos um identificador. Um declarador deve incluir um especificador de tipo para ser uma declaração completa. O especificador de tipo dá: o tipo dos elementos de um tipo de matriz, o tipo de objeto endereçado por um tipo de ponteiro ou o tipo de retorno de uma função.

As declarações de matriz e ponteiro são discutidas com mais detalhes mais adiante nesta seção. Os exemplos a seguir ilustram algumas formas simples de declaradores:

int list[20]; // Declares an array of 20 int values named list
char *cp;     // Declares a pointer to a char value
double func( void ); // Declares a function named func, with no
                     // arguments, that returns a double value
int *aptr[10]; // Declares an array of 10 pointers

Específico da Microsoft

O compilador Microsoft C não limita o número de declaradores que podem modificar uma aritmética, estrutura ou tipo de união. O número é limitado apenas pela memória disponível.

END Específico da Microsoft

Ver também

Declarações e tipos