From: Holger Kiehl <Holger.Kiehl@dwd.de>
To: Glynn Clements <glynn.clements@virgin.net>
Cc: linux-c-programming@vger.kernel.org
Subject: Re: Howto print off_t
Date: Fri, 28 Jun 2002 07:00:18 +0200 (CEST) [thread overview]
Message-ID: <Pine.LNX.4.33.0206280655150.4995-100000@talentix.dwd.de> (raw)
In-Reply-To: <15643.33068.680130.50185@cerise.nosuchdomain.co.uk>
On Thu, 27 Jun 2002, Glynn Clements wrote:
>
> Holger Kiehl wrote:
>
> > > > One could code this as follows:
> > > >
> > > > if (sizeof(off_t) == 4)
> > > > printf("%ld\n", off_t_var);
> > > > else
> > > > printf("%lld\n", off_t_var);
> > >
> > > It's probably better to use the preprocessor, i.e.
> > >
> > > #if sizeof(off_t) == 4
> > >
> > Does the sizeof operator work in the preprocessor? I tried this but it
> > does not seem to work for me.
>
> No, sorry; I'd forgotten about the "types" exception for #if.
>
> The argument to #if is a "constant expression", with the same
> definition as in C itself (i.e. what can occur on the RHS of a static
> initialiser), *EXCEPT* that it can't use "sizeof", a cast, or an enum
> constant, but can use "defined()".
>
> If you're using autoconf, you can use AC_CHECK_SIZEOF, e.g.
>
> AC_CHECK_SIZEOF(off_t)
>
> will define SIZEOF_OFF_T to the appropriate value, so you can then
> use e.g.
>
> #include <config.h>
> ...
> #if SIZEOF_OFF_T == 4
> ...
>
I already had plans to use autoconf to do the configuration, so this
will be one more reason for using it.
Many thanks for the help!
Holger
prev parent reply other threads:[~2002-06-28 5:00 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-06-26 21:30 Howto print off_t Holger Kiehl
2002-06-27 6:09 ` Glynn Clements
2002-06-27 19:24 ` Andrew Edmondson
2002-06-27 20:54 ` Glynn Clements
2002-06-27 19:43 ` Holger Kiehl
2002-06-27 21:18 ` Glynn Clements
2002-06-28 5:00 ` Holger Kiehl [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Pine.LNX.4.33.0206280655150.4995-100000@talentix.dwd.de \
--to=holger.kiehl@dwd.de \
--cc=glynn.clements@virgin.net \
--cc=linux-c-programming@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).