ANSI C 1

ANSI C 1



DODATEK A PRZEWODNIK JĘZYKA C

union { struct { int type; ł n;

struct { int type; int intnode;

} ni; struct { int type; float floatnode;

} nf;

} u;

• • •

u.nf.type = FLOAT; u.nf.floatnode = 3.14;

• • •

if (u.n.type == FLOAT)

... sin (u.nf.floatnode) ...

A8.4 Wyliczenia

Wyliczenia są szczególnymi typami o wartościach ze zbioru nazwanych stałych - tzw. wyliczników. Postać specyfikatora wyliczenia zapożyczono od struktur i unii.

specyfikator-wyliczenia:

enum identyfikatorze { lista-wyliczników } enum identyfikator

lista-wyliczników:

wylicznik

lista-wyliczników , wylicznik

wylicznik:

identyfikator

identyfikator = wyraienie-stałe

Identyfikatory na liście wyliczników są deklarowane jako stałe typu int i mogą wystąpić wszędzie tam, gdzie są wymagane stałe*. Jeśli żaden z wyliczników nie wystę-

Z wyjątkiem wyrażeń w #if. - Przyp. tłum.

A8 DEKLARACJE___I powered by I

1 Misio! I

puje z operatorem =, to wartości tych stałych rozpoczynają się od 0ŁjłmA^a—i o 1 wraz z kolejnością deklaracji czytanych od lewej strony do prawej. Deklaracja z operatorem = nadaje odpowiedniemu identyfikatorowi wskazaną wartość; wartości kolejnych identyfikatorów wzrastają począwszy od podanej wartości.

W tym samym zasięgu nazwy wyliczników muszą być unikalne i muszą być różne od nazw zwykłych zmiennych, natomiast ich wartości nie muszą być różne.

Rola identyfikatora w specyfikatorze wyliczenia jest taka sama, jak rola etykietki struktury w specyfikatorze struktury - jest nazwą danego wyliczenia. Zasady odnoszące się do specyfikatora wyliczenia z etykietką lub bez i z listą są takie same, jak w przypadku specyfikatorów struktur i unii z tym jednak wyjątkiem, że nie istnieją niekompletne typy wyliczenia - etykietka specyfikatora wyliczenia bez listy wyliczników musi odnosić się do występującego w jej zasięgu specyfikatora z listą.

Wyliczenia nie występowały w pierwszym wydaniu książki, ale od paru lat

są częścią języka C.

A8.5 Deklaratory

Składnia deklaratorów jest następująca: deklarator:

wskaźnikopc bezpośredni-deklarator

bezpośredni-deklarator: identyfikator ( deklarator )

bezpośredni-deklarator [ wyrażenie-stałeopc ] bezpośredni-deklarator ( lista-typów-parametrów ) bezpośredni-deklarator ( lista-identyfikatorówopc )

wskaźnik:

*    lista-kwalifikatorów-typuopc

*    lista-kwalifikatorów-typuopc wskaźnik

lista-kwalifikatorów-typu:

kwalifikator-typu

lista-kwalifikatorów-typu kwalifikator-typu

Postać deklaratorów przypomina postać wyrażeń z adresowaniem pośrednim, wywołaniem funkcji lub odwołaniem do tablicy; łączność jest taka sama.

285


Wyszukiwarka

Podobne podstrony:
ANSI C 1 DODATEK A PRZEWODNIK JĘZYKA C Implementacje różnią się reakcjami na dzielenie przez zero
ANSI C 1 DODATEK A PRZEWODNIK JĘZYKA _______ 6 Te zasady różnią się pod kilkoma względami od zasad
ANSI C 6 DODATEK A PRZEWODNIK JĘZYKA C struktura-unia: jeden z struct union lista-deklaracji-skład
ANSI C 0 DODATEK A PRZEWODNIK JĘZYKA C_______ int max(a, b, c) int a, b, c;{ /* .» *1} gdzie dekla
ANSI C 5 DODATEK A PRZEWODNIK JĘZYKA C_________A2.1 Jednostki leksykalne Istnieje sześć klas jedno
ANSI C 6 DODATEK A PRZEWODNIK JĘZYKA C_____.____A2.5.2 Stałe znakowe Stała znakowa jest ciągiem zł
ANSI C 7 DODATEK A PRZEWODNIK JĘZYKA C------- czaj umieszczane w oddzielnych wierszach; w kilku pr
ANSI C 8 DODATEK A PRZEWODNIK JĘZYKA C_________ Wszystkie z typów zmiennopozycyjnych: pojedynczej
ANSI C 9 DODATEK A PRZEWODNIK JĘZYKA C_______—- Gdy wartość całkowita jest przekształcana do typu
ANSI C 0 DODATEK A PRZEWODNIK JĘZYKA C_________ Obiekt typu całkowitego można jawnie przekształcić
ANSI C 2 DODATEK A PRZEWODNIK JĘZYKA C W pierwszym wydaniu książki typ wyrażenia przyrostkowego by
ANSI C 4 DODATEK A PRZEWODNIK JĘZYKA C_______ wynikiem jest 1; jeśli odnosi się do tablicy, to wyn
ANSI C 5 DODATEK A PRZEWODNIK JĘZYKA CA7.8 Operatory przesunięcia Operatory przesunięcia « i » są
ANSI C 6 DODATEK A PRZEWODNIK JĘZYKA C_____ Wynikiem tej operacji jest bitowa różnica symetryczna
ANSI C 7 DODATEK A PRZEWODNIK JĘZYKA C__________ rekurencyjnie, podskładowych nie może być kwalifi
ANSI C 8 DODATEK A PRZEWODNIK JĘZYKA
ANSI C 9 DODATEK A PRZEWODNIK JĘZYKA C________■ Kwalifikatory typu wskazują specjalne właściwości
ANSI C 0 DODATEK A PRZEWODNIK JĘZYKA C ___——- łujących się do samych siebie: struktura lub unia mo
ANSI C 2 DODATEK A PRZEWODNIK JĘZYKA CA8.6 Znaczenie deklaratorów Lista deklaratorów pojawia się p

więcej podobnych podstron