Deutsch English Français Italiano |
<v2pd6k$278q5$1@dont-email.me> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Malcolm McLean <malcolm.arthur.mclean@gmail.com> Newsgroups: comp.lang.c Subject: Re: C23 thoughts and opinions - why so conservative? Date: Fri, 24 May 2024 07:47:48 +0100 Organization: A noiseless patient Spider Lines: 35 Message-ID: <v2pd6k$278q5$1@dont-email.me> References: <v2l828$18v7f$1@dont-email.me> <20240523171911.00002f5a@yahoo.com> <v2o7re$1tlge$1@dont-email.me> <20240524003424.0000590a@yahoo.com> <v2op72$2017t$3@dont-email.me> <v2p94a$26km6$1@dont-email.me> <v2p9cg$26gfp$4@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Fri, 24 May 2024 08:47:49 +0200 (CEST) Injection-Info: dont-email.me; posting-host="f48de8b41b11cb8834de85d0042c883a"; logging-data="2335557"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX180arHc9Mg4Q7qiXb01mfbtUm0FyS0o0iI=" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:PV5Lty53hvVDEsDNJvuTfJJHZ1c= In-Reply-To: <v2p9cg$26gfp$4@dont-email.me> Content-Language: en-GB Bytes: 2533 On 24/05/2024 06:42, Lawrence D'Oliveiro wrote: > On Fri, 24 May 2024 06:38:18 +0100, Malcolm McLean wrote: > >> On 24/05/2024 02:06, Lawrence D'Oliveiro wrote: >> >>> On Fri, 24 May 2024 00:34:24 +0300, Michael S wrote: >>> >>>> On Thu, 23 May 2024 22:10:22 +0200 David Brown >>>> <david.brown@hesbynett.no> wrote: >>>> >>>>> What program control construct would you like? >>>>> >>>> Ability to break from nested loops. >>> >>> At least 90% of the time, when I want to exit from an inner loop in C, >>> there will be some kind of cleanup I need to do in the outer loop >>> before that can exit too. So the ability to jump straight out will >>> rarely be used. >> >> goto gives you the functionality you require. > > I avoid those. I structure my code like a Nassi-Shneiderman diagram, where > each block has one entrance at the top, and one exit at the bottom. Easier > to keep track of error conditions and cleanups that way. > I virtually always use goto for memory allocation failure. It does mean that, strictly, the function is no longer a "structured" subroutine. But reality is usually that memory allocation failure will mean program termination pretty soon. -- Check out Basic Algorithms and my other books: https://www.lulu.com/spotlight/bgy1mm