Thread: The best (according to you) C Develpment Environment

  1. #16
    Fountain of knowledge.
    Join Date
    May 2006
    Posts
    794
    Well I have enough capability as it is now, I am only ever compiliing one file at a time anyway.
    I actually I just noticed that it won't work if the filename is longer than a certain length (I believe).
    Never had that problem before because my c program names are short, but the extra ".c"
    makes then longer than MSDOS can handle??? (8 chars max??)

    I imagine I would have a few problems switching to an IDE now? Compile compatibility etc..?

  2. #17
    and the hat of sweating
    Join Date
    Aug 2007
    Location
    Toronto, ON
    Posts
    3,545
    Quote Originally Posted by esbo View Post
    Well I have enough capability as it is now, I am only ever compiliing one file at a time anyway.
    I actually I just noticed that it won't work if the filename is longer than a certain length (I believe).
    Never had that problem before because my c program names are short, but the extra ".c"
    makes then longer than MSDOS can handle??? (8 chars max??)

    I imagine I would have a few problems switching to an IDE now? Compile compatibility etc..?
    Wow, you're still using DOS? I haven't used it in over a decade.

  3. #18
    Lurking whiteflags's Avatar
    Join Date
    Apr 2006
    Location
    United States
    Posts
    9,612
    Make would certainly help... I don't know much about programming in DOS (I hadn't started programming then - you're talking about an operating system that was new when I was in grade school. You'd probably enjoy a move to Turbo C or something like that since you are working with ancient technology.

    But you could probably write make yourself. The only thing that make does is parse makefiles and execute the programs to accomplish your "goals." It's a lot like batch processing except you might do this to build something:
    Code:
    build:
            ($CC) -c ($SOURCES) -o bar ($CFLAGS)
    and then when executing make:

    make -f path/to/makefile build

    It's a bit simpler, in my opinion, to use make because it already understands how to handle file extensions and you would spare yourself the work of figuring that problem out in bash. But learning how to write makefiles before you try rolling your own is probably a worthy expenditure of your time.
    Last edited by whiteflags; 02-14-2008 at 10:41 PM.

  4. #19
    Fountain of knowledge.
    Join Date
    May 2006
    Posts
    794
    Quote Originally Posted by cpjust View Post
    Wow, you're still using DOS? I haven't used it in over a decade.
    Yes I compile in DOS and use some batch files to do it.

    I had tried some other packages before but basically found them to be pretty much unusable.
    I use the djcpp compiler.

    All I need is an editor of which I can choose the best available, a good compiler and a simple batch file.
    Thats all. What more do I need? Basically and IDE forces a lot of restrictions on you.

    All window stuff is based on DOS anyway with a heavy cumbersome and slow (and cr*p)
    use interface bolted on top.

    Yes DOS is pretty rubbish but what other choice have you got? It's rubbish compared to UNIX
    but there you got. I don't really lilke using 'branded' C products.

  5. #20
    Fountain of knowledge.
    Join Date
    May 2006
    Posts
    794
    Quote Originally Posted by citizen View Post
    Make would certainly help... I don't know much about programming in DOS (I hadn't started programming then - you're talking about an operating system that was new when I was in grade school. You'd probably enjoy a move to Turbo C or something like that since you are working with ancient technology.

    But you could probably write make yourself. The only thing that make does is parse makefiles and execute the programs to accomplish your "goals." It's a lot like batch processing except you might do this to build something:
    Code:
    build:
            ($CC) -c ($SOURCES) -o bar ($CFLAGS)
    and then when executing make:

    make -f path/to/makefile build

    It's a bit simpler, in my opinion, to use make because it already understands how to handle file extensions and you would spare yourself the work of figuring that problem out in bash. But learning how to write makefiles before you try rolling your own is probably a worthy expenditure of your time.
    When I was looking for a free C compiler DJGPP seemed the best available, that might have
    changed but it meets all my needs really so why change?

    I might like to put a 'graphical' interface on some of my programs, but quite frankly C++ looks rather horrendous, I had nothing but problems when I tried it before.
    Maybe that was because the development enviroment consumed the entire resourses of my old computer!!

    How big is Turbo C these days?
    About 5 giga byes I would imagine
    DJGPP is 43 meg.

    Anyway I am not being rude and I might give it a try, I just get the feeling I will run into
    all sorts of problems, I tried Borland C before and gave up on it for some reason.
    I just seem to remember loads of problems.

  6. #21
    Lurking whiteflags's Avatar
    Join Date
    Apr 2006
    Location
    United States
    Posts
    9,612
    > How big is Turbo C these days?

    Well, since you are working with a 16-bit OS, any 16-bit compiler or environment is going to be suitably small for the machine. Borland 5.5 is free, and you probably won't experience problems if you are really working in a 16-bit environment with the compiler. (Indeed if you are you should understand your limitations and know how to program for it.) I don't see a reason why they wouldn't include the IDE in the download.

  7. #22
    Registered User
    Join Date
    Oct 2001
    Posts
    2,129
    Quote Originally Posted by citizen View Post
    You'd probably enjoy a move to Turbo C or something like that since you are working with ancient technology.
    No, DJGPP is a 32-bit protected mode gcc compiler. Turbo C is a 16-bit real mode compiler. DJGPP would be better, for him/her, IMHO.

  8. #23
    Fountain of knowledge.
    Join Date
    May 2006
    Posts
    794
    Quote Originally Posted by robwhit View Post
    No, DJGPP is a 32-bit protected mode gcc compiler. Turbo C is a 16-bit real mode compiler. DJGPP would be better, for him/her, IMHO.
    Yes so it will be faster for him (actually)!!

  9. #24
    uint64_t...think positive xuftugulus's Avatar
    Join Date
    Feb 2008
    Location
    Pacem
    Posts
    355
    Quote Originally Posted by esbo View Post
    When I was looking for a free C compiler DJGPP seemed the best available, that might have
    changed but it meets all my needs really so why change?
    An old *nix administrator's saying says: "If a system is working, don't change it" :P
    I like your approach, been there also. My old Amiga500 would still kick ass today had it not melted from overgaming ... i suggest one thing. DJGPP integrates great with Allegro, a very easy game library. Look around and you might have some lots of fun. The library is loaded with demos, and their source. Don't try tutorials for it, just read the code!
    Code:
    ...
        goto johny_walker_red_label;
    johny_walker_blue_label: exit(-149$);
    johny_walker_red_label : exit( -22$);
    A typical example of ...cheap programming practices.

  10. #25
    and the hat of sweating
    Join Date
    Aug 2007
    Location
    Toronto, ON
    Posts
    3,545
    Quote Originally Posted by esbo View Post
    All window stuff is based on DOS anyway with a heavy cumbersome and slow (and cr*p) use interface bolted on top.
    Well that was true with 16-bit Windows 3.x, but 32-bit Windows OS's (especially the NT line) are quite different from DOS. It's true that the GUI and some of the background services might slow down the system, but it's also 32-bit and multitasking, so while DOS programs have access to 100% of the CPU, most programs don't actually use 100% all the time (unless they have a bug). Windows (or Linux or other multitasking OS's) can make better use of your CPU (or CPU's) by sharing them with multiple programs. It's also aware of the advanced CPU instructions that have been added over the last decade. So in that respect, you could also argue that it's faster than DOS (since it's doing more things at the same time).

    Quote Originally Posted by esbo View Post
    Yes DOS is pretty rubbish but what other choice have you got? It's rubbish compared to UNIX but there you got. I don't really lilke using 'branded' C products.
    It sounds like you'd be happier with Linux then. Why aren't you using that?

  11. #26
    Registered User
    Join Date
    Feb 2008
    Posts
    26
    I see a lot of people use Visual Studio, but I heard it doesn't support C99 fully yet. I don't know about the more recent '08 version, but it doesn't matter much since most things I've run into when compiling without C99 is not being able to declare the initialization expression in for loop.

    Personally I use jGRASP.

  12. #27
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    No, 08 doesn't support C99 either. But then again, what use for C99 these days? It handles C89 okay and C++ beautifully. And C++ is pretty much all you need for both C and C++ these days.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  13. #28
    Registered User
    Join Date
    Oct 2001
    Posts
    2,129
    >But then again, what use for C99 these days?
    The z length modifier.

  14. #29
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Smart pointers and dynamic arrays and perhaps std::vector takes care of that
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  15. #30
    Just Lurking Dave_Sinkula's Avatar
    Join Date
    Oct 2002
    Posts
    5,005
    Does C++ have designated initializers or variadic macros?
    7. It is easier to write an incorrect program than understand a correct one.
    40. There are two ways to write error-free programs; only the third one works.*

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. (VC++ related) Unicode or Multi-byte environment?
    By PaulBlay in forum C Programming
    Replies: 3
    Last Post: 05-22-2009, 08:42 AM
  2. Replies: 8
    Last Post: 05-07-2009, 11:31 AM
  3. Replies: 11
    Last Post: 02-18-2009, 06:10 AM
  4. Draw distance through environment mapping
    By VirtualAce in forum Game Programming
    Replies: 1
    Last Post: 05-14-2006, 11:52 AM
  5. Setting OS Environment Variables
    By ImNotMad in forum C Programming
    Replies: 4
    Last Post: 10-23-2003, 02:07 AM