Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.c > #142997
| Newsgroups | comp.lang.c |
|---|---|
| Date | 2019-04-10 20:02 -0700 |
| References | <098da5fe-31d3-47b7-b695-d4faea10b366@googlegroups.com> <e9d0004b-6a21-43ef-98f6-16ed2152d985@googlegroups.com> |
| Message-ID | <b734ed8a-dcf0-45f7-82ad-fb4fa9e05ba2@googlegroups.com> (permalink) |
| Subject | Re: Scopes of identifiers |
| From | James Kuyper <jameskuyper@alumni.caltech.edu> |
On Wednesday, April 10, 2019 at 7:34:34 PM UTC-4, Thiago Adams wrote:
...
> We can declare structs inside structs,or enum but not
> functions ...
Correct: 6.7.2.1p2
> ... or typedefs.
Correct. A member of a struct or union is allowed to have a specifier-
qualifier-list that may contain any combination of type-specifiers and
type-qualifiers (6.7.2.1p1), but may not have any of the storage-class-
specifiers (6.7.1) or function-specifiers (6.7.4) that are allowed for
declarations in other contexts (6.7p1). Thus, they may not use the
typedef, extern, static, auto, register, or inline keywords.
> And I don't have much idea if declaring a function
> in a function scope makes sense.
Correct: "A label name is the only kind of identifier that has function
scope." (6.2.1p3).
> Functions are always in a global scope, ...
The C standard does not use the term "global scope". Some people use
that term when they should be using the term "file scope". Functions do
NOT always have file scope. All identifiers other than macro names,
macro parameters, and labels follow the same scope rules (6.2.1p4), and
that includes function identifiers.
> ... but I can declare it
> in a function scope?
No, since it's not a label.
> void F()
> {
> void F3();
That is a block-scope declaration. The scope of that declaration ends
with the next line:
> }
>
> void F4()
> {
So there's no declaration in scope for the following function call:
> F3();
> }
Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Scopes of identifiers Thiago Adams <thiago.adams@gmail.com> - 2019-04-10 16:15 -0700
Re: Scopes of identifiers Bart <bc@freeuk.com> - 2019-04-11 00:33 +0100
Re: Scopes of identifiers Thiago Adams <thiago.adams@gmail.com> - 2019-04-10 16:45 -0700
Re: Scopes of identifiers Thiago Adams <thiago.adams@gmail.com> - 2019-04-10 18:31 -0700
Re: Scopes of identifiers Thiago Adams <thiago.adams@gmail.com> - 2019-04-10 16:34 -0700
Re: Scopes of identifiers Robert Wessel <robertwessel2@yahoo.com> - 2019-04-10 20:50 -0500
Re: Scopes of identifiers James Kuyper <jameskuyper@alumni.caltech.edu> - 2019-04-10 20:02 -0700
Re: Scopes of identifiers Keith Thompson <kst-u@mib.org> - 2019-04-10 20:58 -0700
Re: Scopes of identifiers luser droog <luser.droog@gmail.com> - 2019-04-10 21:48 -0700
Re: Scopes of identifiers Andrey Tarasevich <andreytarasevich@hotmail.com> - 2019-04-11 11:57 -0700
Re: Scopes of identifiers scott@slp53.sl.home (Scott Lurndal) - 2019-04-11 19:12 +0000
Re: Scopes of identifiers Thiago Adams <thiago.adams@gmail.com> - 2019-04-11 12:35 -0700
Re: Scopes of identifiers Ben Bacarisse <ben.usenet@bsb.me.uk> - 2019-04-12 01:11 +0100
Re: Scopes of identifiers Thiago Adams <thiago.adams@gmail.com> - 2019-04-12 05:29 -0700
Re: Scopes of identifiers Thiago Adams <thiago.adams@gmail.com> - 2019-04-12 05:39 -0700
Re: Scopes of identifiers Keith Thompson <kst-u@mib.org> - 2019-04-11 14:00 -0700
Re: Scopes of identifiers Nick Bowler <nbowler@draconx.ca> - 2019-04-15 19:48 +0000
Re: Scopes of identifiers Bart <bc@freeuk.com> - 2019-04-11 10:36 +0100
Re: Scopes of identifiers Bart <bc@freeuk.com> - 2019-04-11 14:25 +0100
Re: Scopes of identifiers Keith Thompson <kst-u@mib.org> - 2019-04-11 10:20 -0700
Re: Scopes of identifiers Thiago Adams <thiago.adams@gmail.com> - 2019-04-11 05:00 -0700
Re: Scopes of identifiers Thiago Adams <thiago.adams@gmail.com> - 2019-04-11 06:42 -0700
Re: Scopes of identifiers James Kuyper <jameskuyper@alumni.caltech.edu> - 2019-04-11 08:11 -0700
Re: Scopes of identifiers BGB <cr88192@gmail.com> - 2019-04-10 22:35 -0500
Re: Scopes of identifiers Keith Thompson <kst-u@mib.org> - 2019-04-10 22:04 -0700
Re: Scopes of identifiers BGB <cr88192@gmail.com> - 2019-04-11 05:46 -0500
Re: Scopes of identifiers John Bode <jfbode1029@gmail.com> - 2019-04-11 12:04 -0700
Re: Scopes of identifiers James Kuyper <jameskuyper@alumni.caltech.edu> - 2019-04-11 13:18 -0700
Re: Scopes of identifiers Keith Thompson <kst-u@mib.org> - 2019-04-11 14:31 -0700
Re: Scopes of identifiers Andrey Tarasevich <andreytarasevich@hotmail.com> - 2019-04-11 12:28 -0700
Re: Scopes of identifiers Thiago Adams <thiago.adams@gmail.com> - 2019-04-11 12:50 -0700
Re: Scopes of identifiers James Kuyper <jameskuyper@alumni.caltech.edu> - 2019-04-11 14:20 -0700
Re: Scopes of identifiers Thiago Adams <thiago.adams@gmail.com> - 2019-04-11 14:43 -0700
Re: Scopes of identifiers Andrey Tarasevich <andreytarasevich@hotmail.com> - 2019-04-11 15:04 -0700
Re: Scopes of identifiers Keith Thompson <kst-u@mib.org> - 2019-04-11 17:08 -0700
Re: Scopes of identifiers Andrey Tarasevich <andreytarasevich@hotmail.com> - 2019-04-11 18:45 -0700
Re: Scopes of identifiers James Kuyper <jameskuyper@alumni.caltech.edu> - 2019-04-11 23:16 -0400
Re: Scopes of identifiers Keith Thompson <kst-u@mib.org> - 2019-04-11 20:19 -0700
Re: Scopes of identifiers Tim Rentsch <tr.17687@z991.linuxsc.com> - 2019-04-12 14:39 -0700
Re: Scopes of identifiers Ike Naar <ike@sdf.lonestar.org> - 2019-04-13 20:02 +0000
Re: Scopes of identifiers James Kuyper <jameskuyper@alumni.caltech.edu> - 2019-04-11 23:26 -0400
csiph-web