Sujet : Re: Suggested method for returning a string from a C program?
De : tr.17687 (at) *nospam* z991.linuxsc.com (Tim Rentsch)
Groupes : comp.lang.cDate : 20. Mar 2025, 19:24:11
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <86a59fo910.fsf@linuxsc.com>
References : 1 2 3 4 5 6 7 8
User-Agent : Gnus/5.11 (Gnus v5.11) Emacs/22.4 (gnu/linux)
Richard Heathfield <
rjh@cpax.org.uk> writes:
On 20/03/2025 13:06, Tim Rentsch wrote:
>
Richard Heathfield <rjh@cpax.org.uk> writes:
>
<snip>
>
I'm not sure a new edition is necessary, but if it is to be
written it would be better served by someone like Keith or Tim,
both of whom have (as I have not) kept up with the million-and-one
changes that appear to have assailed the simple language I once
enjoyed.
>
The C99 standard has a list of 54 what it calls "major changes",
although IMO many or most of those are fairly minor. There are also
other differences relative to C90, but most of them are simply
clarifications or slight changes in wording.
>
Those I largely recall from discussions at the time, but I dare to
conclude that your lack of a reference to C11, C17, and C23 means that
they had a lesser effect on the language than I'd feared.
I chose C99 (and C99 only) because it is the first step after C90,
and because I think C99 is more common than any other variant.
There is also the question of how much material to present, and how
much time would be needed to prepare a faithful summary. I didn't
want to overwhelm people, and I didn't want to be overwhelmed
myself, not because of how many changes are involved, but due to the
effort need to sift through and organize them. I didn't look at the
C11 standard, nor any subsequent versions of the standard, before
making the decision to do just C99.
As it turn out, the C11 standard lists only 15 "major changes" (if
my quick counting is correct), so your conclusion that later
versions have had a lesser effect appears to be correct, at least as
far as C11 goes. If I have time I may post again on this topic,
doing for the C11 standard what I did for the C99 standard.
I see now from casual research that C17 was predominantly a bug fix,
but that C11 and C23 were somewhat busier.
Looking quickly over the listed changes in C11, I count only six or
seven that I would put on the same level as the ones I gave for C99.
My understanding of what was done in the C17 standard agrees with
your casual research, except I might have said "almost entirely"
rather than "predominantly".
I have not spent nearly as much time looking at the C23, especially
in comparison with C99 or C11. Based on what little I do know about
C23, I consider that version of C to be one best avoided, for at
least a decade and perhaps more. I may have more to say about that
at some point in the future but do not have anything right now.