eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingStroustrup o C++Re: Stroustrup o C++
  • Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit
    0.net!news.mixmin.net!aioe.org!.POSTED!not-for-mail
    From: AK <n...@n...net>
    Newsgroups: pl.comp.programming
    Subject: Re: Stroustrup o C++
    Date: Mon, 14 Jan 2019 10:48:51 +0100
    Organization: Aioe.org NNTP Server
    Lines: 54
    Message-ID: <q1hlu3$d1l$1@gioia.aioe.org>
    References: <e...@g...com>
    <q1d5vs$pgs$1@gioia.aioe.org>
    <e...@g...com>
    <c...@g...com>
    <q1f5pu$1b58$1@gioia.aioe.org>
    <a...@g...com>
    <q1fpaf$4a8$1@gioia.aioe.org>
    <e...@g...com>
    <q1hjfj$1ug$1@gioia.aioe.org>
    NNTP-Posting-Host: MV2AClG/2c9bVI3d/hJi2Q.user.gioia.aioe.org
    Mime-Version: 1.0
    Content-Type: text/plain; charset=utf-8; format=flowed
    Content-Transfer-Encoding: 7bit
    X-Complaints-To: a...@a...org
    User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:60.0) Gecko/20100101
    Thunderbird/60.4.0
    Content-Language: en-GB
    X-Notice: Filtered by postfilter v. 0.8.3
    Xref: news-archive.icm.edu.pl pl.comp.programming:213268
    [ ukryj nagłówki ]

    On 2019-01-14 10:06, AK wrote:
    > No bez jaj. Przeszkadzaja, gdyz tak wlasciwie nie dzialaja
    > w sizeof, a jedynie wprowadzaja w blad/konfuzje (8 zamiast 9)
    > developerow.
    > Nie powinny byc w sizeof dopuszczalne, tak jak nie jest
    > dopuszczalne dowolne wyrazenie (a jedynie consts expr) w
    > deklaracji rozmiaru tablicy, czy w dyrektywach preprocesora

    Mozna by to wprowadzic juz na poziomie gramatyki np. tak:

    Jest (ANSI-C/C99):

    /* (6.5.3) */
    unary_expression :
    postfix_expression ${action Actions.token0} |
    '++' unary_expression ${action Actions.prefix_increment_expression} |
    '--' unary_expression ${action Actions.prefix_decrement_expression} |
    /* unary_operator cast_expression */
    '&' cast_expression ${action Actions.address_expression} |
    '*' cast_expression ${action Actions.indirection_expression} |
    '+' cast_expression ${action Actions.unary_plus_expression} |
    '-' cast_expression ${action Actions.unary_minus_expression} |
    '~' cast_expression ${action Actions.bitwise_NOT_expression} |
    '!' cast_expression ${action Actions.logical_NOT_expression} |
    'sizeof' unary_expression ${action Actions.sizeof_expression} |
    'sizeof' '(' type_name ')' ${action Actions.sizeof_type_expression} ;

    Moglo by byc w rodzaju:

    /* (6.5.3) */
    sizeof_expression :
    postfix_expression ${action Actions.token0} |
    /* unary_operator cast_expression */
    '&' cast_expression ${action Actions.address_expression} |
    '*' cast_expression ${action Actions.indirection_expression} |
    '+' cast_expression ${action Actions.unary_plus_expression} |
    '-' cast_expression ${action Actions.unary_minus_expression} |
    '~' cast_expression ${action Actions.bitwise_NOT_expression} |
    '!' cast_expression ${action Actions.logical_NOT_expression} |
    'sizeof' sizeof_expression ${action Actions.sizeof_expression} |
    'sizeof' '(' type_name ')' ${action Actions.sizeof_type_expression} ;

    /* (6.5.3) */
    unary_expression :
    sizeof_expression ${action Actions.token0} |
    '++' unary_expression ${action Actions.prefix_increment_expression} |
    '--' unary_expression ${action Actions.prefix_decrement_expression} ;

    PS: Noi?
    PS1: Nie wiem czy by to nie zabuzylo priorytetu operatorow (nie chce mi
    sie sprawdzac, ale na 90% nie), ale nawet gdyby, to zawsze to mozna
    uskutecznic semantycznie (juz w AST).

    AK

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: