Thread: Curiosity and caffeine fuel this programmer

  1. #1
    Registered User
    Join Date
    Sep 2004
    Posts
    153

    Question Curiosity and caffeine fuel this programmer

    Hey everyone,
    I was just wondering, I've read many books that have denounced Visual C++, saying it fails to correctly implement C++ (I'm sorry to be a pain but I cant seem to find a page with the comment so I dont remember what version...well anyways, I'm using Visual studio.net...is that different from VC++? At least in terms of how correct the implementation of the standards is? Also, I'm not a professional programmer obviously (from this post alone...not to mention my countless others hehe) so is VS or VC++ the only option in the workplace? Do ppl use Borland's or Bloodshed's compilers?...they seem unprofessional and not quite as user friendly to me, but thats my own opinion. That's like a 6 year old trying to explain his beliefs on life to a 40 year old haha.

    Those are just a few things on my mind...any insight is always appreciated. Thanks,Chap

  2. #2
    Registered User
    Join Date
    Mar 2002
    Posts
    1,595
    The compiler in VS.net is more standards compliant than the compiler in VC++ 6.0. However, reports are that there is no compiler which completely implements the standards. The newer compilers do come closer to that goal than older versions, but alas, are not perfect either. MS compilers are the defacto industry standard, but professional material is produced using all the major, and probably a number of the minor, compilers. Writing standards compliant code with any "compliant" compiler should be the same, though using proprietary libraries like MFC and VCL, which have the bells and whistles a lot of people like to use, will make the code non-compliant.
    You're only born perfect.

  3. #3
    Handy Andy andyhunter's Avatar
    Join Date
    Dec 2004
    Posts
    540
    Well, now we have tread onto the two different standards in programming. There is the ISO standard and then there is the commercial standard. Unfortunately these two do not always travel down the same road.

    As such, some may say unfortunately, but for OS application development the majority occurs in Windows and as such Microsoft sets the standard because they are the standard for commercial development.

    When you dive into commercial application development you will find yourself more involved with the api for the OS and not so much the ISO standard for the language. This is simply a matter of fact.

    Please, this is not a flame post. So don't flame.
    i don't think most standard compilers support programmers with more than 4 red boxes - Misplaced

    It is my sacred duity to stand in the path of the flood of ignorance and blatant stupidity... - quzah

    Such pointless tricks ceased to be interesting or useful when we came down from the trees and started using higher level languages. - Salem

  4. #4
    Registered User
    Join Date
    Sep 2004
    Posts
    153
    what's a flame post?

    Just to show you how much I know about proper etiquette...so a flame is when you insult someone? Are you trying to say that ppl on these forums would insult me for asking a quesiton? Or even because the topic is simple? Ahh bah humbug...learning is learning I searched the internet and read a few more of my many books before posting because I couldnt find an answer. I respect the opinion of the people who post on these forums...I've never seen a stupid outburst of obnoxious behavior...only helpful comments and replies.
    Last edited by Chaplin27; 02-12-2005 at 10:13 PM. Reason: additional info

  5. #5
    Handy Andy andyhunter's Avatar
    Join Date
    Dec 2004
    Posts
    540
    My bad I corrected my post. I meant to say this is not a flame post, meaning that just because people don't like Microsoft they would throw out a bunch of non facted based crap.
    i don't think most standard compilers support programmers with more than 4 red boxes - Misplaced

    It is my sacred duity to stand in the path of the flood of ignorance and blatant stupidity... - quzah

    Such pointless tricks ceased to be interesting or useful when we came down from the trees and started using higher level languages. - Salem

  6. #6
    Registered User
    Join Date
    Dec 2004
    Posts
    465
    A flame post would be if people came in and started arguing and denouncing peoples opinions.
    My computer is awesome.

  7. #7
    Registered User
    Join Date
    Sep 2004
    Posts
    153
    oh ok...yeah...everyone has a problem with Microsoft hehe...and in all honesty if they dont like Microsoft...they're just a waste of space!! hehe j/k I had to get one cliched joke in before the night's over...I'm sorry you had to be a part of it hehe...I have to say...Andy, you make some interesting comments:
    There is the ISO standard and then there is the commercial standard.
    It's like the standard becomes the best case scenario but not what's efficiently handled in a work environment...however, imagine a world without the standard...it's always nice to fall back on set parameters, even if they're bent or slightly twisted (hopefully not broken...that's just useless)...

    I can sense an important discussion brewing...
    Last edited by Chaplin27; 02-12-2005 at 10:19 PM. Reason: excitement

  8. #8
    Carnivore ('-'v) Hunter2's Avatar
    Join Date
    May 2002
    Posts
    2,879
    VC++ often will refer to Visual C++ 6.0, which is an old version and isn't very standard compliant (And has annoying bugs too). I used to use it though, and it seems to get the job done OK. Modern versions (i.e. the various .NET's) are better for standard compliance, although MSVC 2005 (I think it's still free beta download?) seems to take a step backward by introducing false warnings that say "(xxx function) has been deprecated", for certain library functions that MS has deemed insecure and replaced with their own versions.
    Just Google It. √

    (\ /)
    ( . .)
    c(")(") This is bunny. Copy and paste bunny into your signature to help him gain world domination.

  9. #9
    Hello,

    I'm not sure any compiler can be 100% ISO/ANSI C compliant. The original purpose of the ANSI specification was to establish a narrow definition of the C language, one that could be compiled and run on many different computers and execution environments. It was a grand vision of portability. The ANSI C standard, unlike most standards, does not dictate a minimum level of functionality. Strictly-conforming compilers accept a specific definition of the language.

    The ANSI C specifications were first released in 1990, in a document with the formal-sounding name of ANSI X3.159-1989. This standard was also adopted by the International Standards Organization (ISO) as ISO/TEC 9899-1990. Subsequently, the standard was updated, and the latest version is C99, ISO/IEC 9899:1999.

    Data typing is application-dependent, not implementation-dependent. The definition of int in the last 15 years attests to this. First it was set as 16 bits, to support the PDP-11 natural word size. Later, it was intended to vary with the natural size of the processor.

    In October of 2002, Microsoft had pledged that its next version of Visual Studio .NET will contain an ISO/ANSI-compliant version of Visual C++ .NET. That version of Visual Studio .NET aimed for a score of 90+ compliance with the C++ standard. Hunter2 laid the basis on VC6/VC++ compliance.


    - Stack Overflow
    Segmentation Fault: I am an error in which a running program attempts to access memory not allocated to it and core dumps with a segmentation violation error. This is often caused by improper usage of pointers, attempts to access a non-existent or read-only physical memory address, re-use of memory if freed within the same scope, de-referencing a null pointer, or (in C) inadvertently using a non-pointer variable as a pointer.

  10. #10
    and the hat of int overfl Salem's Avatar
    Join Date
    Aug 2001
    Location
    The edge of the known universe
    Posts
    39,659
    > I'm using Visual studio.net
    > Also, I'm not a professional programmer
    If you are fortunate enough to have access to .net while you are learning, then that's OK for learning C++. Most newbies don't have that kind of $$$ to hand, so the usual recommendation is dev-c++ (you get an IDE and a GNU-GCC compiler).

    > they seem unprofessional
    They also cost $0 - a biggie for the student on a budget. But that's just the glossy IDE. The compiler (the GNU based ones at least) is just as good as the Microsoft compiler (in standards compliancy), and that's the bit which counts when it comes to learning the language (not whether the IDE allows say italic fonts).

    Many newbies learn from the command prompt (using a separate editor for the code). An IDE is just a distraction (and information hider). I don't even bother with the IDE for small simple programs, it's just too bulky.
    If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.
    If at first you don't succeed, try writing your phone number on the exam paper.

Popular pages Recent additions subscribe to a feed