🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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

Re: Jakie są zasady pracy z stdin?

#310534
From: Jacek Marcin Jaworski
Date: Thu, 21 Mar 2024 14:59
26 lines
2334 bytes
W dniu 20.03.2024 o 22:22, heby pisze:
> On 20/03/2024 21:35, Jacek Marcin Jaworski wrote:
>> Jednak mi chodzi o prosty przypadek gdy mam kilka linii do odczytania 
>> z stdin i wtedy read((long long) 2*1024*1024*1024) nic nie zwraca
> 
> Może zgaduje, że rozmiar stringa będzie przekroczony. Dla mniejszych 
> buforów zadziała?

Dla mniejszych buforów działa!
Jednorazowo z stdin można maks. odczytać 2GB:
QString lWszytko = QTextStream(stdin).read((long long) 2 * 1024 * 1024 * 
1024 - 1);
Zmyliła mnie błędna dok. f. QString QTextStream::read(qint64 maxlen). 
Ona zwraca QString który ma operator[](int) oraz operator[](unsigned 
int). Tak więc teoretycznie QString powinien mieć maks. dł. 4GB 
(unsigned int). Jednak z jakiegoś powodu QTextStream obsługuje maks. 2GB.

Taka uwaga na koniec:
Nie jest przypadkiem, że odczytuję za jednym zamachem całe stdin. Bo 
prog. konsoli zwane edytorami strumieniowymi mogą działać w 2 trybach: 
linijkowym i blokowym.
W trybie linijkowym działa np. sed i grep i jest to problem gdy wzorzec 
ma parę linii.
Natomiast w trybie blokowym działa np. sort i nie da się tego zmienić.

Dzięki wielkie Heby!
Technical Details
Message-ID: <uthi0u$d7v$1$Jaworski@news.chmurka.net>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.chmurka.net!.POSTED.37.30.118.194!not-for-mail
References: <utf2d8$ds6$1$Jaworski@news.chmurka.net> <utf8ag$1kcek$1@dont-email.me> <utfh9o$sph$1$Jaworski@news.chmurka.net> <utfk25$1nd1a$2@dont-email.me>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.chmurka.net!.POSTED.37.30.118.194!not-for-mail
From: Jacek Marcin Jaworski <jaworski1978@adres.pl>
Newsgroups: pl.comp.lang.c
Subject: Re: Jakie są zasady pracy z stdin?
Date: Thu, 21 Mar 2024 15:59:42 +0100
Organization: news.chmurka.net
Message-ID: <uthi0u$d7v$1$Jaworski@news.chmurka.net>
References: <utf2d8$ds6$1$Jaworski@news.chmurka.net> <utf8ag$1kcek$1@dont-email.me> <utfh9o$sph$1$Jaworski@news.chmurka.net> <utfk25$1nd1a$2@dont-email.me>
NNTP-Posting-Host: 37.30.118.194
MIME-Version: 1.0
Injection-Date: Thu, 21 Mar 2024 14:59:42 -0000 (UTC)
Injection-Info: news.chmurka.net; posting-account="Jaworski"; posting-host="37.30.118.194"; logging-data="13567"; mail-complaints-to="abuse-news.(at).chmurka.net"
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:gxSIEP5ASPlOkoD1OTE5LDDMDtk= sha256:vrs1KaoNNwwNB0HZfKkA9ScjvrWJQMqkjfgEDoyH5Cg= sha1:ib0ZCdMf98gUMOLsMU8GrNbR18M= sha256:/KFQ0xLbFrjRJjbdOF2bdjujMdJoWLWedn/zVhPl+VY=
In-Reply-To: <utfk25$1nd1a$2@dont-email.me>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit