🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.c
Article #486

Re: C.D. Segmentation fault przy strtok...

#486
From: Marek Kotowski
Date: Thu, 08 Jan 1998 14:47
46 lines
2385 bytes
Qrczak wrote:

> 
> Pretensje kierowaæ do autorów C, ¿e w ogóle pozwolili u¿ywaæ funkcji bez
> prototypów.
> 

  Pozwolili, bo inaczej uczyniliby wiele istniejacych programow
formalnie niepoprawnymi.

> Wiêc nie mo¿na tak wywo³ywaæ, bo warto¶ci *linia nie mo¿na zmieniaæ! W tym
> przypadku lepiej zrobiæ deklaracjê linia[] = "la la la";, co przy okazji
> trochê przyspieszy kod (bo wska¼nik linia bêdzie sta³±, a nie zmienn±;
> linia[3] to bêdzie ustalone miejsce w pamiêci, a nie warto¶æ zmiennej
> wska¼nikowej z dodan± trójk±).

  Watpie. W obydwu przypadkach strtok zwraca adres. Poza tym notacja
indeksowa jest zawsze zamieniana na wskaznikowa. Wreszcie zycie uczy,
ze jakiekolwiek wyrokowanie o wyzszej efektywnosci notacji wskaznikowej
nad indeksowa lub odwrotnie jest ryzykowne. Wszystko zalezy od 
kompilatora.

> 
> Pretensje kierowaæ do autorów C, ¿e sta³e ³añcuchowe s± typu char *, a nie
> const char *, tzn. ¿e nie wymuszaj± u¿ywania const.
> 

Wytlumacze ich. Nie przyjeli kwalifikatora const dla literalow
znakowych,
bo w ten sposob ograniczaliby mozliwosc ich stosowania jako argumentow
w wywolaniach funkcji, takze standardowych, ktore maja argumenty bez
const (kompilatory moglyby nie akceptowac takich wywolan). Prawda jest
natomiast, ze postuluje sie, by w nowym standardzie jezyka C literaly
znakowe mialy atrybut const, a nawet dwa:

const char * const p = "Tekst";

  Cokolwiek zostanie przyjete, nie bedzie to mialo charakteru
obligatoryjnego. W przeciwnym razie duza czesc istniejacego
oprogramowania stalaby sie bledna, co byloby sprzeczne z
podstawowymi zalozeniami tworzenia standardu.


  Z powazaniem

  Marek Kotowski
Technical Details
Message-ID: <34B4E719.69A1@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-mail
References: <199712260255.DAA21573@sprocket.ict.pwr.wroc.pl> <Pine.LNX.3.96.971226092616.28295A-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: C.D. Segmentation fault przy strtok...
Date: Thu, 08 Jan 1998 15:47:53 +0100
Organization: Instytut Maszyn Matematycznych
Lines: 46
Message-ID: <34B4E719.69A1@imm.org.pl>
References: <199712260255.DAA21573@sprocket.ict.pwr.wroc.pl> <Pine.LNX.3.96.971226092616.28295A-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