A Conversation for C - the Programming Language

"C" easy to learn? not likely

Post 1

xyroth

Who are you trying to kid. C is easy to programme in, but is a complete joke to learn. you get a version that is ansi standard compatable, and despite this not all the commands work the way that they are described in the standard (but which ones differ are implimentation dependant). Then you have to learn the libraries, so that you can do anything. fine, but you can't look up what you want to do and find out how to do it. Then you have to learn a gui so that you can do multimedia, (or all of it at the same time if you use microsoft tools), and you can't look that up easily either.
In fact, the documentation for using C is just like those computer manuals from the mid 80's (only worse for some things).
At every step, you ask people how you do "x", only to be told that you can't do it. months later, after a lot of clat, you finally figure out how to do it, go back and tell the people who you originally asked, and they reply that they knew it all along.
As for C++ being better, although it MAY be technically better, there are so many different ways of doing anything, that it is almost impossible to find any documentation that is only as bad as the stuff for "C".


"C" easy to learn? not likely

Post 2

terminal_error

If you can't hack learning libraries, write them. If you can't learn C, use a 'C for Dummies' guide. It really is.
As for the uses of C - there's nothing more satisfying than a language where you can embed some assembler to do the really dirty work, and I've never found a more useful language for pointers.

**Are you still working on QuickBasic then?**

Al (et al)


"C" easy to learn? not likely

Post 3

xyroth

No, I use bbc basic (on the pc, amiga, archimedes and bbc micro) which has always included an assembler as standard, and which supports procedures & functions, I also use forth, lisp, pascal (only if I have to), modula 2, and lots of different assembler languages.
I also administer 2 silicon graphics iris "irix" graphics workstations, 3 different sites who have linux machines, windows 3.3 & 95 & 98, and a couple of other different systems. The problem is not that the language is hard to write, but that if you need to find out how to do "task n", it is impossible to find out, and when you have, it has always been easy to do it.
Also, "standard" c is only approximately standardised, and although you should be able to easily refer to what the format is for the library calls, and what they do, it just isn't documented anywhere. You have to collate the information from a large number of different sources, most of them very expensive, and then check against your implimentation of c to find out if your supplier has done things the standard way.
In the early 80's, computer companies used to get character assasinated for producing manuals which were much more informative, but it now seems to be perfectly acceptable to produce a programming language or operating system for a machine with no documentation on the assumption that someone else will write the documentation for you, and all the people who bought your product will magically find out about this with no help from the supplier at all.
as for the "for dummies books", they are all right, but assume that you have installed the version of c that they are using, only want to do elementary things, and never use any libraries other than stdio and possibly mathlib.
This is no help when you need to use the library for ncurses, vgalib, or any other mildly non standard libraries.


"C" easy to learn? not likely

Post 4

DF

I don't know about C, but C++ is a actually very easy to learn (IMO), and, in fact, you can get some good books on programming it, and using it to program GUI apps (Though I can't attest to how good any of these are as I've not checked any of them out, though my teacher did recomend a couple of them to me). If you can't afford the books, go to the library and check them out. It is really quite easy to do. And if you just plain don't like the language, well, you don't have to use it. Anyway, that's just my 2 cents.

~~DF


"C" easy to learn? not likely

Post 5

xyroth

I do like the language, I don't have a problem programming it for any area where the information is available, but the problem is that ALL of the documentation (when there is any) assumes that you already know the answer, and just want to look up the details.
This is fine for experienced programmers, who are already familiar with the language, but is no good for a programmer who already knows how to programme, but doesn't know the specific commands to do "task n" using "C". As for the books that you recommend getting from the library, I have read C for dummies, how to programme in C in 21 days, and a number of others, and all of them assume that you are using the version of C that they are written for (microsoft, borland, etc), use windows 9x, don't differentiate for most tasks between the stuff you need to know for writing a command line program and the stuff you must know to program windows 9x, and never mention the stuff you need to know to write for unix in any of it's forms.
C++ has some good features, but is such a bodge, that I have been told by various friends who make their living writing in it to avoid it unless there is no choice.
All I want is the ability to look up the information that I need without having to trawl through thousands of pages of text looking for the three lines that tell you how to do what you want to do (while not being mentioned in the index of course), without having to put up with the assumption that I already know everything, so why am I looking. That is assuming that the information is available at all.


"C" easy to learn? not likely

Post 6

DF

Ah, I actually have 3 good friends who _are_ programmers and rather like C++. *shrugs* but, they may just be weird. I, personaly, program only as a passtime (I'm a HS senior taking a college level primer course in CS, rather fun actually since I know more than the rest of the class). Anyway, I can't really help with C, as I've only worked in C++ and a tiny (when I say tiny I mean TINY) bit of JavaScript (not even the real language, just the script, blech). But, anyway, hope ye find a path of gold in your quest for knowledge.

~~DF


"C" easy to learn? not likely

Post 7

Liet

I liked the article, but would like to see a mention of Brian Kernigan, who wrote the book "The C Programming Language" with Dennis Ritchie, commonly referred to as the C Bible and usually just called K&R. And I believe the first edition dates to 1978, so I think C is just over 20 years old?

Nice to see a few C hacks are still out there!


"C" easy to learn? not likely

Post 8

terminal_error

Of course, if you like C but don't like the lack of standard and documentation, try Perl. It won't do much on GUIs for you, but for a whole lot of administrative tasks (like my web server for a start) it's the perfect tool. The "Learning Perl" and "Programming Perl" tools from O' Reilly are great and cover exactly the gap that everyone was quibbling about two postings ago, and given that it covers everything from Windows to Unix/Linux, it's amazing how few things have to change depending on platform.

It's amazing for Apache servers in particular - I only miss the graphics functions from C, which are a) brilliant and b)thoroughly customisable.

That's my 10-penny worth.

Al (et al)


"C" easy to learn? not likely

Post 9

lw - ck

C++ better be easy 'cos im learning it

smiley - angelCksmiley - devil


"C" easy to learn? not likely

Post 10

abhayinfotech

c is busy but it is basic language. if u understand this language u can understand all types of language.


Key: Complain about this post

Write an Entry

"The Hitchhiker's Guide to the Galaxy is a wholly remarkable book. It has been compiled and recompiled many times and under many different editorships. It contains contributions from countless numbers of travellers and researchers."

Write an entry
Read more