Article View: pl.comp.lang.c
Article #831Re: Rezerwacja pamieci
From: Marek Kotowski
Date: Mon, 26 Jan 1998 12:53
Date: Mon, 26 Jan 1998 12:53
34 lines
2718 bytes
2718 bytes
Qrczak wrote: > > Mozna napisac kod poprawny w C, nawet w standardzie (tylko > > standardowe slowa kluczowe i standardowe funkcje biblioteczne), > > ktory nie bedzie przenosny do innych komputerow/kompilatorow, bo np. > > uzywa nieprzenosnie unii, zaklada okreslony znak zmiennej > > znakowej (char), zaklada pakowanie lub nie struktur, zaklada > > okreslony rozmiar i sposob traktowania struktur bitowych, przyjmuje > > okreslony porzadek obliczen (efekty uboczne) tam, gdzie > > jest on nieokreslony, bazuje na okreslonym uporzadkowaniu > > bajtow w slowie czy w podwojnym slowie. > > Wystarczy? > > Nie zgodzê siê z tak± definicj± przeno¶no¶ci. Przeno¶no¶æ nie musi > _uniemo¿liwiaæ_ napisania programu, który na ró¿nych platformach ró¿nie > siê wykona. IMHO do przeno¶no¶ci jêzyka wystarczy, ¿eby da³o siê w nim > pisaæ przeno¶ne programy bez istotnej straty mo¿liwo¶ci i wygody (i ¿eby > by³o jasno udokumentowane, które konstrukcje s± przeno¶ne). > Alez tu nie ma zadnej definicji przenosnosci, a zwlaszcza, co to jest program przenosny (to oddzielny temat). Tu jest tylko wskazanie, ze z zasady w jezyku C sa rzeczy, ktore - ex definitione - sa pozostawione implementacji jezyka. Kto na nich bazuje, tworzy kod nieprzenosny (to latwiej zdefiniowac niz kod przenosny). Panska uwaga o "jasnym udokumentowaniu" jest sluszna - standard formuluje, co jest zalezne od implementacji, co nieokreslone, a co niezdefiniowane. Kompilator, czy szerzej: implementacja C (moze to byc np. interpreter) moze te rzeczy dookreslic i dodefiniowac, ale korzystanie z tego czyni program nieprzenosnym np. do innych kompilatorow. Pozdrawiam Marek Kotowski
Technical Details
Message-ID:
<34CC875A.290D@imm.org.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!uw.edu.pl!news.nask.pl!not-for-mailReferences:
<34C4F3AB.C34902CC@willow.iie.pz.zgora.pl> <34C5BEC9.2018@imm.org.pl> <34c73f51.1429095@news.icm.edu.pl> <34C70746.46AB@imm.org.pl> <34C7636B.33829801@fuw.edu.pl> <34C77265.11BB@imm.org.pl> <01bd27f3$0b82ce60$2701070a@jark.insert.igo.wroc.pl> <34C89233.435C@imm.org.pl> <01bd2817$afde9240$2701070a@jark.insert.igo.wroc.pl> <34C8C608.7701@imm.org.pl> <34cae9cf.10806741@news.icm.edu.pl> <34C9F9FA.1D66@imm.org.pl> <Pine.LNX.3.96.980124183019.4923A-100000@qrnik.knm.org.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!uw.edu.pl!news.nask.pl!not-for-mail From: Marek Kotowski <mkot@imm.org.pl> Newsgroups: pl.comp.lang.c Subject: Re: Rezerwacja pamieci Date: Mon, 26 Jan 1998 13:53:46 +0100 Organization: Instytut Maszyn Matematycznych Lines: 34 Message-ID: <34CC875A.290D@imm.org.pl> References: <34C4F3AB.C34902CC@willow.iie.pz.zgora.pl> <34C5BEC9.2018@imm.org.pl> <34c73f51.1429095@news.icm.edu.pl> <34C70746.46AB@imm.org.pl> <34C7636B.33829801@fuw.edu.pl> <34C77265.11BB@imm.org.pl> <01bd27f3$0b82ce60$2701070a@jark.insert.igo.wroc.pl> <34C89233.435C@imm.org.pl> <01bd2817$afde9240$2701070a@jark.insert.igo.wroc.pl> <34C8C608.7701@imm.org.pl> <34cae9cf.10806741@news.icm.edu.pl> <34C9F9FA.1D66@imm.org.pl> <Pine.LNX.3.96.980124183019.4923A-100000@qrnik.knm.org.pl> NNTP-Posting-Host: 148.81.238.53 Mime-Version: 1.0 X-Mailer: Mozilla 3.01Gold (Win95; I) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit