LinuxGuruz
  • Last 5 Forum Topics
    Replies
    Views
    Last post


The Web Only This Site
  • BOOKMARK

  • ADD TO FAVORITES

  • REFERENCES


  • MARC

    Mailing list ARChives
    - Search by -
     Subjects
     Authors
     Bodies





    FOLDOC

    Computing Dictionary




  • Text Link Ads






  • LINUX man pages
  • Linux Man Page Viewer


    The following form allows you to view linux man pages.

    Command:

    offsetof

    
    
    

    SYNOPSIS

           #include <stddef.h>
    
           size_t offsetof(type, member);
    
    
    

    DESCRIPTION

           The  macro  offsetof()  returns the offset of the field member from the
           start of the structure type.
    
           This macro is useful because the sizes of the  fields  that  compose  a
           structure  can  vary  across  implementations, and compilers may insert
           different numbers of padding bytes between  fields.   Consequently,  an
           element's  offset  is  not necessarily given by the sum of the sizes of
           the previous elements.
    
           A compiler error will result if member is not aligned to a byte  bound-
           ary (i.e., it is a bit field).
    
    
    

    RETURN VALUE

           offsetof()  returns  the  offset  of  the given member within the given
           type, in units of bytes.
    
    
    

    CONFORMING TO

           C89, C99, POSIX.1-2001.
    
    
    

    EXAMPLE

           On a Linux/i386 system, when compiled using the default gcc(1) options,
           the program below produces the following output:
    
               $ ./a.out
               offsets: i=0; c=4; d=8 a=16
               sizeof(struct s)=16
    
       Program source
    
           #include <stddef.h>
           #include <stdio.h>
           #include <stdlib.h>
    
           int
           main(void)
           {
               struct s {
                   int i;
                   char c;
                   double d;
                   char a[];
               };
    
               /* Output is compiler dependent */
    
               printf("offsets: i=%zd; c=%zd; d=%zd a=%zd\n",
    
  • MORE RESOURCE


  • Linux

    The Distributions





    Linux

    The Software





    Linux

    The News



  • MARKETING






  • Toll Free

webmaster@linuxguruz.com
Copyright © 1999 - 2016 by LinuxGuruz