Article View: pl.comp.lang.c
Article #309952Re: Błąd preprocesora czy czegoś nie rozumiem?
From: Maciek Godek
Date: Fri, 04 Oct 2019 10:21
Date: Fri, 04 Oct 2019 10:21
22 lines
2714 bytes
2714 bytes
W dniu piątek, 4 października 2019 12:15:51 UTC+2 użytkownik M.M. napisał: > On Friday, October 4, 2019 at 9:22:14 AM UTC+2, Tomasz Kaczanowski wrote: > > W dniu 2019-10-03 o 23:36, PawelS pawel(at)wbcd(dot)pl pisze: > > > > >> #define TEST2( __x__ ) int __x__ ## __LINE__ = 0 > > > int __y__ ## __LINE__ = 0; > > > int __y__ ## __LINE__ = 0; > > > niech mnie ktoś poprawi, ale to wygląda trochę jak > > > podwójna deklaracja tej samej zmiennej, > > > albo już zbyt zmęczony jestem ... > > > > __LINE__ daje numer linii z miejsca gdzie jest wywołany, więc to będą 2 > > różne zmienne. > > Tak programista oczekuje, żeby były to dwie różnie zmienne, jednak > kompilator dawał błąd jakby to była jedna zmienna (dwie zmienne o > tej samej nazwie). Przy 'potrójnym wywołaniu' problem ustąpił. Bo tak było. Tworzyłeś dwie instancje zmiennej o nazwie y__LINE__ w tym samym zasięgu. Przy zmaganiach z preprocesorem warto wywołać 'cpp' (czyli C PreProcessor), żeby zobaczyć, co trafia do kompilatora.
Technical Details
Message-ID:
<7b9ed67c-207f-4232-bda1-d8d147723dec@googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erje.net!4.us.feeder.erje.net!feeder.erje.net!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder-in1.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!o24no5620800qtl.0!news-out.google.com!x7ni767qtf.0!nntp.google.com!o24no5620798qtl.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mailReferences:
<780a7f39-337b-4b6b-810f-7c4151e10f74@googlegroups.com> <5d9669cf$0$543$65785112@news.neostrada.pl> <qn6rv3$1sta$1@gioia.aioe.org> <283b2657-ac65-4db2-9c88-e87377ab4146@googlegroups.com>Show Full Headers
Complete Article Headers
X-Received: by 2002:a37:b704:: with SMTP id h4mr9551258qkf.373.1570184498281; Fri, 04 Oct 2019 03:21:38 -0700 (PDT) X-Received: by 2002:a25:7544:: with SMTP id q65mr1441228ybc.171.1570184498083; Fri, 04 Oct 2019 03:21:38 -0700 (PDT) Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erje.net!4.us.feeder.erje.net!feeder.erje.net!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder-in1.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!o24no5620800qtl.0!news-out.google.com!x7ni767qtf.0!nntp.google.com!o24no5620798qtl.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: pl.comp.lang.c Date: Fri, 4 Oct 2019 03:21:37 -0700 (PDT) In-Reply-To: <283b2657-ac65-4db2-9c88-e87377ab4146@googlegroups.com> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=83.25.250.157; posting-account=f7iIKQoAAAAkDKpUafc-4IXhmRAzdB5r NNTP-Posting-Host: 83.25.250.157 References: <780a7f39-337b-4b6b-810f-7c4151e10f74@googlegroups.com> <5d9669cf$0$543$65785112@news.neostrada.pl> <qn6rv3$1sta$1@gioia.aioe.org> <283b2657-ac65-4db2-9c88-e87377ab4146@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <7b9ed67c-207f-4232-bda1-d8d147723dec@googlegroups.com> Subject: Re: Błąd preprocesora czy czegoś nie rozumiem? From: Maciek Godek <godek.maciek@gmail.com> Injection-Date: Fri, 04 Oct 2019 10:21:38 +0000 Lines: 28 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit