🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Re: fir's sicl

#309353
From: (fir)
Date: Tue, 08 Aug 2017 16:17
62 lines
3992 bytes
jeszcze by mozna powiedziec o kwestii nazewniczej bo to wazny temat, cala koncepcja stoi na tym

typedef
    struct     
    { 
     char* beg;
     char* end;  
    }
     chunk; 

typedef 
  struct   
  { 
   chunk* first; 
   chunk* last; 
  }
   chunks; 

mozna by uzyc innych nazw np 
 chunk ~ string
chunks ~ strings


troche byloby latwiejsze w rozumieniu,
myslalem tez o chnk ~ bytes albo czunk ~ chars  (ale wtedy liczba mnoga nie widowomo jak by byla charss? bytess? ;c ew chunks ~ list_of chars, chunk_of_bytes itp)

na razie zostalo jednak chunk

inna kwestia jak nazwac ten pierwszy i ten ostatni wskaznik - z poczatku nazywalem .begin i .end w obu tj i w chunk i w chunks 
ale bylo to konfudujace w niektorych kodach i okazalo sie ze lepiej uzywac .begin i .end jako wskaznikow w chunku a .first i .last na
wskazniki w na same chunki (pozniej begin skrocilem na beg bo lepiej wygladalo w pewnych kodach bo czasem te kody przy rownej dlugosci wygladaja symetrycznie a z .begin .end krzywo)

z tym first i last jest chytelniej np

s.first[3].begin[3]
 jest raczej czytelniejszni niz 
s.begin[3].begin[3]

a znaczy to 4-ty znak w 4-tym stringu z kolekcji stringow s

przez to .begin i end mozna adresowac zawartosc chunka czyli robi to troche za 
dostep jak tablicja tj

// chunk str 

  str.begin[3] //4-ty znak
  str.end[-2] //trzeci od konca
 
co troche brzydko wyglada, wydaje sie ze przydaloby sie adresowanie od poczatku zrobic 
po prostu jako str[3] (lub tez zmienic ew nazwe begin na troche stosowniejsza) ale tak sie tymczasowo nie da

struct A {
   char* x;
 };

A a,b,c;

// a[5] = 4 zamiast a.x[5]=5
 
czytalem cos kiedys o anonimowych strukturach czy polach w strukturach ale juz nie pamietam czy c czy c++ to ma, zreszta nie wiem czy to by ni zaciemnialo obrazu - tak ze summa sumarum to nazewnicto wjest takie jakie podoalem, przy pewnych zarysowanych wątpliwosciach

pozniejjeszcze moglbym powiedziec nieco wiecej na temat przykladow uzycia i moze napisze cos ale musze zdeczka odpoczac bo ostatnie nie mam na nic sily i wszystko mnie diablo meczy
Technical Details
Message-ID: <07daf799-b5ab-4d75-8174-5a423735cdb9@googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.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!u14no1289656ita.0!news-out.google.com!e5ni999qta.0!nntp.google.com!w51no1229492qtc.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
References: <6950309e-21a6-436f-a500-301fc68754d5@googlegroups.com> <0c601f7b-4830-4d01-894a-9960dc6333fd@googlegroups.com> <9c9cc4ed-e8ac-43bc-9aae-89419967b92f@googlegroups.com> <9246338b-0d67-4774-a4be-6a76cd7386a7@googlegroups.com> <36fe8cff-997e-441c-8570-ef8171726ab8@googlegroups.com> <cff67bf1-eebf-416a-bd4f-e8268c4fe038@googlegroups.com> <a91a409e-3a0d-46b0-996f-7f2015b9c5db@googlegroups.com> <c75017ca-1820-43ab-865a-7d879fc6ec59@googlegroups.com> <a9c984e0-65c7-4e7b-9629-bab9f814d5e8@googlegroups.com>

Show Full Headers
Complete Article Headers
X-Received: by 10.36.53.193 with SMTP id k184mr3268129ita.35.1502209033356;        Tue, 08 Aug 2017 09:17:13 -0700 (PDT)
X-Received: by 10.31.191.67 with SMTP id p64mr26100vkf.4.1502209033308; Tue, 08 Aug 2017 09:17:13 -0700 (PDT)
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.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!u14no1289656ita.0!news-out.google.com!e5ni999qta.0!nntp.google.com!w51no1229492qtc.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.lang.c
Date: Tue, 8 Aug 2017 09:17:12 -0700 (PDT)
In-Reply-To: <a9c984e0-65c7-4e7b-9629-bab9f814d5e8@googlegroups.com>
Complaints-To: groups-abuse@google.com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=5.172.255.49; posting-account=Sb6m8goAAABbWsBL7gouk3bfLsuxwMgN
NNTP-Posting-Host: 5.172.255.49
References: <6950309e-21a6-436f-a500-301fc68754d5@googlegroups.com> <0c601f7b-4830-4d01-894a-9960dc6333fd@googlegroups.com> <9c9cc4ed-e8ac-43bc-9aae-89419967b92f@googlegroups.com> <9246338b-0d67-4774-a4be-6a76cd7386a7@googlegroups.com> <36fe8cff-997e-441c-8570-ef8171726ab8@googlegroups.com> <cff67bf1-eebf-416a-bd4f-e8268c4fe038@googlegroups.com> <a91a409e-3a0d-46b0-996f-7f2015b9c5db@googlegroups.com> <c75017ca-1820-43ab-865a-7d879fc6ec59@googlegroups.com> <a9c984e0-65c7-4e7b-9629-bab9f814d5e8@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <07daf799-b5ab-4d75-8174-5a423735cdb9@googlegroups.com>
Subject: Re: fir's sicl
From: "(fir)" <profesor.fir@gmail.com>
Injection-Date: Tue, 08 Aug 2017 16:17:13 +0000
Lines: 81
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit