Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
| From | Keith Thompson <kst-u@mib.org> |
|---|---|
| Newsgroups | comp.lang.c |
| Subject | Re: memset extensions |
| Date | 2015-11-11 12:51 -0800 |
| Organization | None to speak of |
| Message-ID | <lnwptoqmys.fsf@kst-u.example.com> (permalink) |
| References | <n1v3pk$967$1@dont-email.me> <n1vctl$jg8$1@solani.org> <n1vqhm$u0o$2@dont-email.me> <87lha4ladh.fsf@bsb.me.uk> <n207p4$o0l$2@dont-email.me> |
jacobnavia <jacob@jacob.remcomp.fr> writes:
> Le 11/11/2015 18:22, Ben Bacarisse a écrit :
>> The controlling expression of _Generic does not
>> undergo promotion.
>
> When you type
>
> 'A' in C it is the same as you would have typed "65".
>
> This is done in the lexical analysis phase.
Yes, character constants are of type int. That's not type promotion;
it's just the type of the constant. An expression of type char is still
recognized as a char if it's the first operand of _Generic. For
example:
#include <stdio.h>
#include <stdint.h>
#define TYPEOF(expr) \
(_Generic(expr, \
char: "char", \
int: "int", \
default: "other"))
int main(void) {
int16_t i16;
printf("TYPEOF('A') = %s\n", TYPEOF('A'));
printf("TYPEOF((char)'A') = %s\n", TYPEOF((char)'A'));
printf("TYPEOF(i16) = %s\n", TYPEOF(i16));
}
The output is:
TYPEOF('A') = int
TYPEOF((char)'A') = char
TYPEOF(i16) = other
--
Keith Thompson (The_Other_Keith) kst-u@mib.org <http://www.ghoti.net/~kst>
Working, but not speaking, for JetHead Development, Inc.
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
memset extensions jacobnavia <jacob@jacob.remcomp.fr> - 2015-11-11 11:05 +0100
Re: memset extensions Lőrinczy Zsigmond <zsiga@nospam.for.me> - 2015-11-11 11:08 +0100
Re: memset extensions "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-11-11 04:56 -0800
Re: memset extensions Philipp Klaus Krause <pkk@spth.de> - 2015-11-11 13:39 +0100
Re: memset extensions jacobnavia <jacob@jacob.remcomp.fr> - 2015-11-11 17:34 +0100
Re: memset extensions Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-11 17:22 +0000
Re: memset extensions jacobnavia <jacob@jacob.remcomp.fr> - 2015-11-11 21:19 +0100
Re: memset extensions Keith Thompson <kst-u@mib.org> - 2015-11-11 12:51 -0800
Re: memset extensions James Kuyper <jameskuyper@verizon.net> - 2015-11-11 16:01 -0500
Re: memset extensions jacobnavia <jacob@jacob.remcomp.fr> - 2015-11-11 22:03 +0100
Re: memset extensions Keith Thompson <kst-u@mib.org> - 2015-11-11 13:19 -0800
Re: memset extensions jacobnavia <jacob@jacob.remcomp.fr> - 2015-11-11 22:45 +0100
Re: memset extensions James Kuyper <jameskuyper@verizon.net> - 2015-11-11 16:51 -0500
Re: memset extensions jacobnavia <jacob@jacob.remcomp.fr> - 2015-11-11 23:01 +0100
Re: memset extensions James Kuyper <jameskuyper@verizon.net> - 2015-11-11 17:29 -0500
Re: memset extensions jacobnavia <jacob@jacob.remcomp.fr> - 2015-11-11 23:36 +0100
Re: memset extensions Keith Thompson <kst-u@mib.org> - 2015-11-11 15:00 -0800
Re: memset extensions James Kuyper <jameskuyper@verizon.net> - 2015-11-11 16:48 -0500
Re: memset extensions Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-11 22:15 +0000
Re: memset extensions James Kuyper <jameskuyper@verizon.net> - 2015-11-11 08:05 -0500
Re: memset extensions Eric Sosman <esosman@comcast-dot-net.invalid> - 2015-11-11 08:31 -0500
Re: memset extensions jacobnavia <jacob@jacob.remcomp.fr> - 2015-11-11 17:34 +0100
Re: memset extensions Les Cargill <lcargill99@comcast.com> - 2015-11-11 08:30 -0600
Re: memset extensions Eric Sosman <esosman@comcast-dot-net.invalid> - 2015-11-11 09:48 -0500
Re: memset extensions gwowen <gwowen@gmail.com> - 2015-11-11 07:55 -0800
Re: memset extensions James Kuyper <jameskuyper@verizon.net> - 2015-11-11 11:24 -0500
Re: memset extensions jacobnavia <jacob@jacob.remcomp.fr> - 2015-11-11 17:32 +0100
Re: memset extensions Eric Sosman <esosman@comcast-dot-net.invalid> - 2015-11-11 11:44 -0500
Re: memset extensions raltbos@xs4all.nl (Richard Bos) - 2015-11-17 22:53 +0000
Re: memset extensions supercat@casperkitty.com - 2015-11-17 15:37 -0800
Re: memset extensions raltbos@xs4all.nl (Richard Bos) - 2015-11-20 11:27 +0000
Re: memset extensions supercat@casperkitty.com - 2015-11-20 08:45 -0800
Re: memset extensions supercat@casperkitty.com - 2015-11-11 08:25 -0800
Re: memset extensions Keith Thompson <kst-u@mib.org> - 2015-11-11 09:09 -0800
Re: memset extensions supercat@casperkitty.com - 2015-11-11 09:18 -0800
Re: memset extensions Keith Thompson <kst-u@mib.org> - 2015-11-11 10:57 -0800
Re: memset extensions jacobnavia <jacob@jacob.remcomp.fr> - 2015-11-11 21:17 +0100
csiph-web