Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. C / C++ / MFC
  4. delete

delete

Scheduled Pinned Locked Moved C / C++ / MFC
29 Posts 7 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • L Luc Pattyn

    N a v a n e e t h wrote:

    set "Compile as C".

    I never did that, it seems to know from the extension (as it should IMO).

    N a v a n e e t h wrote:

    create an empty project

    ah. of course. I'll have to remember that. thanks. :)

    Luc Pattyn [Forum Guidelines] [Why QA sucks] [My Articles] Nil Volentibus Arduum

    Please use <PRE> tags for code snippets, they preserve indentation, and improve readability.

    N Offline
    N Offline
    N a v a n e e t h
    wrote on last edited by
    #19

    Luc Pattyn wrote:

    it seems to know from the extension (as it should IMO).

    I don't think so. On default settings it uses C++ compiler to compile the code irrespective of what extension it is. You can see this from the output window. This will work because most of the C code is also valid on C++. When you set the "Compile as C" option, you can see adiitional compiler flag getting added to the compile command and it defaults to the C89 standard. :)

    Best wishes, Navaneeth

    L 2 Replies Last reply
    0
    • L Luc Pattyn

      N a v a n e e t h wrote:

      set "Compile as C".

      I never did that, it seems to know from the extension (as it should IMO).

      N a v a n e e t h wrote:

      create an empty project

      ah. of course. I'll have to remember that. thanks. :)

      Luc Pattyn [Forum Guidelines] [Why QA sucks] [My Articles] Nil Volentibus Arduum

      Please use <PRE> tags for code snippets, they preserve indentation, and improve readability.

      D Offline
      D Offline
      David Crow
      wrote on last edited by
      #20

      Luc Pattyn wrote:

      ...it seems to know from the extension (as it should IMO).

      It always has for me. I've never changed compiler options when switching between C and CPP files.

      "One man's wage rise is another man's price increase." - Harold Wilson

      "Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons

      "Man who follows car will be exhausted." - Confucius

      L 1 Reply Last reply
      0
      • N N a v a n e e t h

        Luc Pattyn wrote:

        it seems to know from the extension (as it should IMO).

        I don't think so. On default settings it uses C++ compiler to compile the code irrespective of what extension it is. You can see this from the output window. This will work because most of the C code is also valid on C++. When you set the "Compile as C" option, you can see adiitional compiler flag getting added to the compile command and it defaults to the C89 standard. :)

        Best wishes, Navaneeth

        L Offline
        L Offline
        Luc Pattyn
        wrote on last edited by
        #21

        I now located the "compile as C" switch (project Properties/Configuration Properties/CC++/Advanced); I'm pretty sure I've never used it before. I will experiment next time I need some native code stuff. Thanks. :)

        Luc Pattyn [Forum Guidelines] [Why QA sucks] [My Articles] Nil Volentibus Arduum

        Please use <PRE> tags for code snippets, they preserve indentation, and improve readability.

        1 Reply Last reply
        0
        • N N a v a n e e t h

          Luc Pattyn wrote:

          it seems to know from the extension (as it should IMO).

          I don't think so. On default settings it uses C++ compiler to compile the code irrespective of what extension it is. You can see this from the output window. This will work because most of the C code is also valid on C++. When you set the "Compile as C" option, you can see adiitional compiler flag getting added to the compile command and it defaults to the C89 standard. :)

          Best wishes, Navaneeth

          L Offline
          L Offline
          Luc Pattyn
          wrote on last edited by
          #22

          I just discovered Visual Studio 2008 Express Edition applies /TC (i.e. Compile as C code) for a C file inside a C++ project (which has the setting /TP, i.e. Compile as C++ code). So there is no need to change the setting provided the extension is correct. :)

          Luc Pattyn [Forum Guidelines] [Why QA sucks] [My Articles] Nil Volentibus Arduum

          Please use <PRE> tags for code snippets, they preserve indentation, and improve readability.

          N 1 Reply Last reply
          0
          • D David Crow

            Luc Pattyn wrote:

            ...it seems to know from the extension (as it should IMO).

            It always has for me. I've never changed compiler options when switching between C and CPP files.

            "One man's wage rise is another man's price increase." - Harold Wilson

            "Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons

            "Man who follows car will be exhausted." - Confucius

            L Offline
            L Offline
            Luc Pattyn
            wrote on last edited by
            #23

            No need to switch settings, see my 2 replies to nananeeth. :)

            Luc Pattyn [Forum Guidelines] [Why QA sucks] [My Articles] Nil Volentibus Arduum

            Please use <PRE> tags for code snippets, they preserve indentation, and improve readability.

            1 Reply Last reply
            0
            • L Lost User

              Luc Pattyn wrote:

              I wish there were an easier way

              You can write pure C in a .cpp source file.

              It's time for a new signature.

              C Offline
              C Offline
              Cedric Moonen
              wrote on last edited by
              #24

              Richard MacCutchan wrote:

              You can write pure C in a .cpp source file.

              But then your code won't be compiled as C code, in the sense that it is not pure C anymore (you'll be able to declare variables everywhere in a function for instance). If you specify the extension as .c, your file will be compiled as pure C code.

              Cédric Moonen Software developer
              Charting control [v3.0] OpenGL game tutorial in C++

              L 1 Reply Last reply
              0
              • N N a v a n e e t h

                Choose "Empty project". When adding files, specify extension as C (actually extension doesn't matter). Now on the project properties, choose "Compile as C" option.

                Best wishes, Navaneeth

                C Offline
                C Offline
                Cedric Moonen
                wrote on last edited by
                #25

                N a v a n e e t h wrote:

                actually extension doesn't matter

                I don't know for the 2010 version, but for the 2005 version, if your file has a c extension, it will be automatically compiled as C code. So, the extension does make a difference.

                Cédric Moonen Software developer
                Charting control [v3.0] OpenGL game tutorial in C++

                1 Reply Last reply
                0
                • C Cedric Moonen

                  Richard MacCutchan wrote:

                  You can write pure C in a .cpp source file.

                  But then your code won't be compiled as C code, in the sense that it is not pure C anymore (you'll be able to declare variables everywhere in a function for instance). If you specify the extension as .c, your file will be compiled as pure C code.

                  Cédric Moonen Software developer
                  Charting control [v3.0] OpenGL game tutorial in C++

                  L Offline
                  L Offline
                  Lost User
                  wrote on last edited by
                  #26

                  Cedric Moonen wrote:

                  If you specify the extension as .c, your file will be compiled as pure C code.

                  If you really like to be a dinosaur :laugh:

                  It's time for a new signature.

                  C L 2 Replies Last reply
                  0
                  • L Lost User

                    Cedric Moonen wrote:

                    If you specify the extension as .c, your file will be compiled as pure C code.

                    If you really like to be a dinosaur :laugh:

                    It's time for a new signature.

                    C Offline
                    C Offline
                    Cedric Moonen
                    wrote on last edited by
                    #27

                    Awww... I am a dinosaur then :~ I had to do that for a project a couple of weeks ago. But I have to say that moving from C++ to C is really horrible.

                    Cédric Moonen Software developer
                    Charting control [v3.0] OpenGL game tutorial in C++

                    1 Reply Last reply
                    0
                    • L Lost User

                      Cedric Moonen wrote:

                      If you specify the extension as .c, your file will be compiled as pure C code.

                      If you really like to be a dinosaur :laugh:

                      It's time for a new signature.

                      L Offline
                      L Offline
                      Luc Pattyn
                      wrote on last edited by
                      #28

                      or don't like to carry a big run-time library you don't need, e.g. in embedded systems. :)

                      Luc Pattyn [Forum Guidelines] [Why QA sucks] [My Articles] Nil Volentibus Arduum

                      Please use <PRE> tags for code snippets, they preserve indentation, and improve readability.

                      1 Reply Last reply
                      0
                      • L Luc Pattyn

                        I just discovered Visual Studio 2008 Express Edition applies /TC (i.e. Compile as C code) for a C file inside a C++ project (which has the setting /TP, i.e. Compile as C++ code). So there is no need to change the setting provided the extension is correct. :)

                        Luc Pattyn [Forum Guidelines] [Why QA sucks] [My Articles] Nil Volentibus Arduum

                        Please use <PRE> tags for code snippets, they preserve indentation, and improve readability.

                        N Offline
                        N Offline
                        N a v a n e e t h
                        wrote on last edited by
                        #29

                        You are correct. It does automatically. Thanks for pointing that out!

                        Best wishes, Navaneeth

                        1 Reply Last reply
                        0
                        Reply
                        • Reply as topic
                        Log in to reply
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes


                        • Login

                        • Don't have an account? Register

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • Categories
                        • Recent
                        • Tags
                        • Popular
                        • World
                        • Users
                        • Groups