Article View: pl.comp.lang.c
Article #310534Re: Jakie są zasady pracy z stdin?
From: Jacek Marcin Jaworski
Date: Thu, 21 Mar 2024 14:59
Date: Thu, 21 Mar 2024 14:59
26 lines
2334 bytes
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-mailReferences:
<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