|
| C++ og or Fra : Soeren Sandmann |
Dato : 17-04-01 11:56 |
|
På www.bero.org/gcc296.html hævdes det at
"ISO C++ 98 defines /or/ as ||, therefore compliant compilers parse
the code as int ||=1;"
hvor den omtalte kode er
int or=1;
Kan det have sin rigtighed? Er /or/ et nøgleord i C++?
| |
Mogens Hansen (17-04-2001)
| Kommentar Fra : Mogens Hansen |
Dato : 17-04-01 12:18 |
|
Hej Søren,
"Soeren Sandmann" <sandmann@daimi.au.dk> wrote in message
news:ye8n19fyeve.fsf@storm.daimi.au.dk...
>
> int or=1;
Det erklærer en variable af type "int", med navnet "or" (hvilket er
problematisk/ulovligt pga. det er et keyword) som initialiseres med værdien
1.
> Kan det have sin rigtighed? Er /or/ et nøgleord i C++?
Ja, §2.11, table 4 "Alternative Representation"
Venlig hilsen
Mogens Hansen
| |
Byrial Jensen (17-04-2001)
| Kommentar Fra : Byrial Jensen |
Dato : 17-04-01 20:24 |
|
Soeren Sandmann <sandmann@daimi.au.dk> skrev:
>Kan det have sin rigtighed? Er /or/ et nøgleord i C++?
Mogens Hansen har allerede svaret, men jeg kan lige tilføje
at i C er "or" også en makro som ekspanderer til "||". Den
er defineret i headerfilen <iso646.h>.
I <iso646.h> er også tilsvarende makroer for && (and), &=
(and_eq), & (bitand), | (bitor), ~ (compl), ! (not), !=
(not_eq), != (or_eq), |= (or_eq), ^(xor) og ^= (xor_eq).
Jeg vil ikke anbefale nogen at bruge disse makroer under
normale omstændigheder, men de er rare at kende for det
tilfælde at andre har brugt dem.
| |
|
|