Difference between sizeof(struct name_of_struct) vs sizeof(name_of_struct)?What is the difference between #include <filename> and #include “filename”?Regular cast vs. static_cast vs. dynamic_castWhat are the differences between a pointer variable and a reference variable in C++?What are the differences between struct and class in C++?Why isn't sizeof for a struct equal to the sum of sizeof of each member?Difference between 'struct' and 'typedef struct' in C++?C++11 introduced a standardized memory model. What does it mean? And how is it going to affect C++ programming?Why are elementwise additions much faster in separate loops than in a combined loop?What is the difference between 'typedef' and 'using' in C++11?Replacing a 32-bit loop counter with 64-bit introduces crazy performance deviations

...and then she held the gun

How to sort human readable size

Is it a bad idea to have an pen name within only an initial for a surname?

How could I create a situation in which a PC has to make a saving throw or be forced to pet a dog?

Must a CPU have a GPU if the motherboard provides a display port (when there isn't any separate video card)?

What is the difference between state-based effects and effects on the stack?

How many times to repeat an event with known probability before it has occurred a number of times

Manager wants to hire me; HR does not. How to proceed?

How to ask if I can mow my neighbor's lawn

How to avoid offending original culture when making conculture inspired from original

Are soroban (Japanese abacus) classes worth doing?

Was the Lonely Mountain, where Smaug lived, a volcano?

Can I appeal credit ding if ex-wife is responsible for paying mortgage?

Fastest path on a snakes and ladders board

How did the European Union reach the figure of 3% as a maximum allowed deficit?

How do I become a better writer when I hate reading?

Does an African-American baby born in Youngstown, Ohio have a higher infant mortality rate than a baby born in Iran?

Co-worker is now managing my team. Does this mean that I'm being demoted?

How to remove multiple elements from Set/Map AND knowing which ones were removed?

Is it possible to install Firefox on Ubuntu with no desktop enviroment?

Does PC weight have a mechanical effect?

How can religions without a hell discourage evil-doing?

Why is Skinner so awkward in Hot Fuzz?

Digital signature that is only verifiable by one specific person



Difference between sizeof(struct name_of_struct) vs sizeof(name_of_struct)?


What is the difference between #include <filename> and #include “filename”?Regular cast vs. static_cast vs. dynamic_castWhat are the differences between a pointer variable and a reference variable in C++?What are the differences between struct and class in C++?Why isn't sizeof for a struct equal to the sum of sizeof of each member?Difference between 'struct' and 'typedef struct' in C++?C++11 introduced a standardized memory model. What does it mean? And how is it going to affect C++ programming?Why are elementwise additions much faster in separate loops than in a combined loop?What is the difference between 'typedef' and 'using' in C++11?Replacing a 32-bit loop counter with 64-bit introduces crazy performance deviations






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








11















The return values of the subject are the same.



Is there any difference between the two? Even if it is subtle/not important, I'd like to know.










share|improve this question




























    11















    The return values of the subject are the same.



    Is there any difference between the two? Even if it is subtle/not important, I'd like to know.










    share|improve this question
























      11












      11








      11








      The return values of the subject are the same.



      Is there any difference between the two? Even if it is subtle/not important, I'd like to know.










      share|improve this question














      The return values of the subject are the same.



      Is there any difference between the two? Even if it is subtle/not important, I'd like to know.







      c++






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked 8 hours ago









      KunseokKunseok

      885




      885






















          2 Answers
          2






          active

          oldest

          votes


















          16














          struct name_of_struct refers unambiguously to a struct/class tagged name_of_struct whereas name_of_struct may be a variable or a function name.



          For example, in POSIX, you have both struct stat and a function named stat. When you want to refer to the struct type, you need the struct keyword to disambiguate (+ plain C requires it always -- in plain C, regular identifiers live in a separate namespace from struct tags and struct tags don't leak into the regular identifier namespace like they do in C++ unless you explicitly drag them there with a typedef as in typedef struct tag /*...*/ tag;).



          Example:



          struct foo char x [256];;
          void (*foo)(void);

          int structsz() return sizeof(struct foo); //returns 256
          int ptrsz() return sizeof(foo); //returns typically 8 or 4


          If this seems confusing, it basically exists to maintain backwards compatibility with C.






          share|improve this answer




















          • 2





            One additional minor note, the struct and class keywords are interchangeable in this context. sizeof(struct foo) and sizeof(class foo) would both work. You don't see the latter very often though, since this mainly comes up in the context of interoperating with C code.

            – Miles Budnek
            8 hours ago






          • 1





            Furthermore struct name_of_struct i.e. an elaborated type specifier also declares name_of_struct. This doesn't make a difference in this particular case, since in order to use sizeof, name_of_struct must be defined, and therefore declared prior. But in another case, it can make a difference.

            – eerorika
            7 hours ago



















          0














          As far as I know: the difference is c struct notation versus C++ notation.






          share|improve this answer























          • No, they are both C++. sizeof(name_of_struct) is only C++ i.e. not C, unless name_of_struct is also a typedef.

            – eerorika
            7 hours ago











          Your Answer






          StackExchange.ifUsing("editor", function ()
          StackExchange.using("externalEditor", function ()
          StackExchange.using("snippets", function ()
          StackExchange.snippets.init();
          );
          );
          , "code-snippets");

          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "1"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f56587468%2fdifference-between-sizeofstruct-name-of-struct-vs-sizeofname-of-struct%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          2 Answers
          2






          active

          oldest

          votes








          2 Answers
          2






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          16














          struct name_of_struct refers unambiguously to a struct/class tagged name_of_struct whereas name_of_struct may be a variable or a function name.



          For example, in POSIX, you have both struct stat and a function named stat. When you want to refer to the struct type, you need the struct keyword to disambiguate (+ plain C requires it always -- in plain C, regular identifiers live in a separate namespace from struct tags and struct tags don't leak into the regular identifier namespace like they do in C++ unless you explicitly drag them there with a typedef as in typedef struct tag /*...*/ tag;).



          Example:



          struct foo char x [256];;
          void (*foo)(void);

          int structsz() return sizeof(struct foo); //returns 256
          int ptrsz() return sizeof(foo); //returns typically 8 or 4


          If this seems confusing, it basically exists to maintain backwards compatibility with C.






          share|improve this answer




















          • 2





            One additional minor note, the struct and class keywords are interchangeable in this context. sizeof(struct foo) and sizeof(class foo) would both work. You don't see the latter very often though, since this mainly comes up in the context of interoperating with C code.

            – Miles Budnek
            8 hours ago






          • 1





            Furthermore struct name_of_struct i.e. an elaborated type specifier also declares name_of_struct. This doesn't make a difference in this particular case, since in order to use sizeof, name_of_struct must be defined, and therefore declared prior. But in another case, it can make a difference.

            – eerorika
            7 hours ago
















          16














          struct name_of_struct refers unambiguously to a struct/class tagged name_of_struct whereas name_of_struct may be a variable or a function name.



          For example, in POSIX, you have both struct stat and a function named stat. When you want to refer to the struct type, you need the struct keyword to disambiguate (+ plain C requires it always -- in plain C, regular identifiers live in a separate namespace from struct tags and struct tags don't leak into the regular identifier namespace like they do in C++ unless you explicitly drag them there with a typedef as in typedef struct tag /*...*/ tag;).



          Example:



          struct foo char x [256];;
          void (*foo)(void);

          int structsz() return sizeof(struct foo); //returns 256
          int ptrsz() return sizeof(foo); //returns typically 8 or 4


          If this seems confusing, it basically exists to maintain backwards compatibility with C.






          share|improve this answer




















          • 2





            One additional minor note, the struct and class keywords are interchangeable in this context. sizeof(struct foo) and sizeof(class foo) would both work. You don't see the latter very often though, since this mainly comes up in the context of interoperating with C code.

            – Miles Budnek
            8 hours ago






          • 1





            Furthermore struct name_of_struct i.e. an elaborated type specifier also declares name_of_struct. This doesn't make a difference in this particular case, since in order to use sizeof, name_of_struct must be defined, and therefore declared prior. But in another case, it can make a difference.

            – eerorika
            7 hours ago














          16












          16








          16







          struct name_of_struct refers unambiguously to a struct/class tagged name_of_struct whereas name_of_struct may be a variable or a function name.



          For example, in POSIX, you have both struct stat and a function named stat. When you want to refer to the struct type, you need the struct keyword to disambiguate (+ plain C requires it always -- in plain C, regular identifiers live in a separate namespace from struct tags and struct tags don't leak into the regular identifier namespace like they do in C++ unless you explicitly drag them there with a typedef as in typedef struct tag /*...*/ tag;).



          Example:



          struct foo char x [256];;
          void (*foo)(void);

          int structsz() return sizeof(struct foo); //returns 256
          int ptrsz() return sizeof(foo); //returns typically 8 or 4


          If this seems confusing, it basically exists to maintain backwards compatibility with C.






          share|improve this answer















          struct name_of_struct refers unambiguously to a struct/class tagged name_of_struct whereas name_of_struct may be a variable or a function name.



          For example, in POSIX, you have both struct stat and a function named stat. When you want to refer to the struct type, you need the struct keyword to disambiguate (+ plain C requires it always -- in plain C, regular identifiers live in a separate namespace from struct tags and struct tags don't leak into the regular identifier namespace like they do in C++ unless you explicitly drag them there with a typedef as in typedef struct tag /*...*/ tag;).



          Example:



          struct foo char x [256];;
          void (*foo)(void);

          int structsz() return sizeof(struct foo); //returns 256
          int ptrsz() return sizeof(foo); //returns typically 8 or 4


          If this seems confusing, it basically exists to maintain backwards compatibility with C.







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited 8 hours ago

























          answered 8 hours ago









          PSkocikPSkocik

          37.4k65783




          37.4k65783







          • 2





            One additional minor note, the struct and class keywords are interchangeable in this context. sizeof(struct foo) and sizeof(class foo) would both work. You don't see the latter very often though, since this mainly comes up in the context of interoperating with C code.

            – Miles Budnek
            8 hours ago






          • 1





            Furthermore struct name_of_struct i.e. an elaborated type specifier also declares name_of_struct. This doesn't make a difference in this particular case, since in order to use sizeof, name_of_struct must be defined, and therefore declared prior. But in another case, it can make a difference.

            – eerorika
            7 hours ago













          • 2





            One additional minor note, the struct and class keywords are interchangeable in this context. sizeof(struct foo) and sizeof(class foo) would both work. You don't see the latter very often though, since this mainly comes up in the context of interoperating with C code.

            – Miles Budnek
            8 hours ago






          • 1





            Furthermore struct name_of_struct i.e. an elaborated type specifier also declares name_of_struct. This doesn't make a difference in this particular case, since in order to use sizeof, name_of_struct must be defined, and therefore declared prior. But in another case, it can make a difference.

            – eerorika
            7 hours ago








          2




          2





          One additional minor note, the struct and class keywords are interchangeable in this context. sizeof(struct foo) and sizeof(class foo) would both work. You don't see the latter very often though, since this mainly comes up in the context of interoperating with C code.

          – Miles Budnek
          8 hours ago





          One additional minor note, the struct and class keywords are interchangeable in this context. sizeof(struct foo) and sizeof(class foo) would both work. You don't see the latter very often though, since this mainly comes up in the context of interoperating with C code.

          – Miles Budnek
          8 hours ago




          1




          1





          Furthermore struct name_of_struct i.e. an elaborated type specifier also declares name_of_struct. This doesn't make a difference in this particular case, since in order to use sizeof, name_of_struct must be defined, and therefore declared prior. But in another case, it can make a difference.

          – eerorika
          7 hours ago






          Furthermore struct name_of_struct i.e. an elaborated type specifier also declares name_of_struct. This doesn't make a difference in this particular case, since in order to use sizeof, name_of_struct must be defined, and therefore declared prior. But in another case, it can make a difference.

          – eerorika
          7 hours ago














          0














          As far as I know: the difference is c struct notation versus C++ notation.






          share|improve this answer























          • No, they are both C++. sizeof(name_of_struct) is only C++ i.e. not C, unless name_of_struct is also a typedef.

            – eerorika
            7 hours ago















          0














          As far as I know: the difference is c struct notation versus C++ notation.






          share|improve this answer























          • No, they are both C++. sizeof(name_of_struct) is only C++ i.e. not C, unless name_of_struct is also a typedef.

            – eerorika
            7 hours ago













          0












          0








          0







          As far as I know: the difference is c struct notation versus C++ notation.






          share|improve this answer













          As far as I know: the difference is c struct notation versus C++ notation.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered 8 hours ago









          Tarick WellingTarick Welling

          513219




          513219












          • No, they are both C++. sizeof(name_of_struct) is only C++ i.e. not C, unless name_of_struct is also a typedef.

            – eerorika
            7 hours ago

















          • No, they are both C++. sizeof(name_of_struct) is only C++ i.e. not C, unless name_of_struct is also a typedef.

            – eerorika
            7 hours ago
















          No, they are both C++. sizeof(name_of_struct) is only C++ i.e. not C, unless name_of_struct is also a typedef.

          – eerorika
          7 hours ago





          No, they are both C++. sizeof(name_of_struct) is only C++ i.e. not C, unless name_of_struct is also a typedef.

          – eerorika
          7 hours ago

















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f56587468%2fdifference-between-sizeofstruct-name-of-struct-vs-sizeofname-of-struct%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          ParseJSON using SSJSUsing AMPscript with SSJS ActivitiesHow to resubscribe a user in Marketing cloud using SSJS?Pulling Subscriber Status from Lists using SSJSRetrieving Emails using SSJSProblem in updating DE using SSJSUsing SSJS to send single email in Marketing CloudError adding EmailSendDefinition using SSJS

          Кампала Садржај Географија Географија Историја Становништво Привреда Партнерски градови Референце Спољашње везе Мени за навигацију0°11′ СГШ; 32°20′ ИГД / 0.18° СГШ; 32.34° ИГД / 0.18; 32.340°11′ СГШ; 32°20′ ИГД / 0.18° СГШ; 32.34° ИГД / 0.18; 32.34МедијиПодациЗванични веб-сајту

          19. јануар Садржај Догађаји Рођења Смрти Празници и дани сећања Види још Референце Мени за навигацијуу