Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #14339

Re: Struct casting

From Tobias Blass <tobiasblass@gmx.net>
Newsgroups comp.lang.c
Subject Re: Struct casting
Date 2011-12-05 22:00 +0000
Organization A noiseless patient Spider
Message-ID <jbjet4$dl3$1@dont-email.me> (permalink)
References <jbjeed$c1v$1@speranza.aioe.org>

Show all headers | View raw


On 2011-12-05, Edward Rutherford <edward.p.rutherford79@REMOVETHIS.gmail.com> wrote:
> This was pulled up at a code review. Code was similar to this:
>
> struct foo {
>   int bar;
>   int baz;
> } f;
>
> int * i = (int *) f;
>
> The only way this could go wrong is if the struct contains padding before 
> its first member, but I don't think this would ever happen in practice 
> --- maybe on theoretical perverse implementations like the ones you guys 
> like to play with :)
>
> Who is right here by the letter of the law?
>
The standard guarantees that there is no padding before the first element, so
this conversion is absolutely valid. It may cause problems when another variable
is placed before the 'bar',though, and I wouldn't bet that the person that adds
the new member will change all these assignments.

Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Struct casting Edward Rutherford <edward.p.rutherford79@REMOVETHIS.gmail.com> - 2011-12-05 21:52 +0000
  Re: Struct casting Harald van Dijk <truedfx@gmail.com> - 2011-12-05 13:58 -0800
  Re: Struct casting Tobias Blass <tobiasblass@gmx.net> - 2011-12-05 22:00 +0000
    Re: Struct casting Ian Collins <ian-news@hotmail.com> - 2011-12-06 11:10 +1300
  Re: Struct casting tom st denis <tom@iahu.ca> - 2011-12-05 14:06 -0800
    Re: Struct casting Ian Collins <ian-news@hotmail.com> - 2011-12-06 11:11 +1300
    Re: Struct casting James Kuyper <jameskuyper@verizon.net> - 2011-12-05 17:13 -0500
  Re: Struct casting Robert Wessel <robertwessel2@yahoo.com> - 2011-12-05 16:10 -0600
    Re: Struct casting Ian Collins <ian-news@hotmail.com> - 2011-12-06 11:13 +1300
    Re: Struct casting James Kuyper <jameskuyper@verizon.net> - 2011-12-05 17:15 -0500
  Re: Struct casting Keith Thompson <kst-u@mib.org> - 2011-12-05 14:16 -0800
    Re: Struct casting Lauri Alanko <la@iki.fi> - 2011-12-06 18:00 +0000
  Re: Struct casting blp@cs.stanford.edu (Ben Pfaff) - 2011-12-05 14:19 -0800
  Re: Struct casting jacob navia <jacob@spamsink.net> - 2011-12-06 08:29 +0100
    Re: Struct casting Malcolm McLean <malcolm.mclean5@btinternet.com> - 2011-12-06 00:15 -0800
      Re: Struct casting Ian Collins <ian-news@hotmail.com> - 2011-12-06 22:30 +1300
  Re: Struct casting jgk@panix.com (Joe keane) - 2011-12-08 21:08 +0000

csiph-web