473,396 Members | 1,785 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,396 software developers and data experts.

Is this a good C tutorial?

Hello,

I'm considering reading some C tutorials. I found this one.

http://www.crasseux.com/books/ctutorial/
(The GNU C Programming Tutorial)

Can anyone tell me if it is good or not? Also do you have any other
recommendations for other good tutorials?

Thanks a lot.

--
Email: The handle, (dot seperated), at gmail dot com.
Mar 6 '07 #1
8 1963

At_sea_with_C wrote:
Hello,

I'm considering reading some C tutorials. I found this one.

http://www.crasseux.com/books/ctutorial/
(The GNU C Programming Tutorial)

Can anyone tell me if it is good or not? Also do you have any other
recommendations for other good tutorials?

Thanks a lot.

--
Email: The handle, (dot seperated), at gmail dot com.
Start reading and experimenting with K&R C. You will be a master !@c

Mar 6 '07 #2
Subra wrote:
At_sea_with_C wrote:
Hello,

I'm considering reading some C tutorials. I found this one.

http://www.crasseux.com/books/ctutorial/
(The GNU C Programming Tutorial)

Can anyone tell me if it is good or not? Also do you have any other
recommendations for other good tutorials?

Thanks a lot.

--
Email: The handle, (dot seperated), at gmail dot com.

Start reading and experimenting with K&R C. You will be a master !@c
K&R C is obsolete. Telling the OP to learn it, instead of ISO C, is
incredibly bad advice.

To the OP:
The book at the link seems to be pretty decent. I'll look at it in
more detail later. Try the following tutorial also, (by a regular of
this group):

<http://www.eskimo.com/~scs/cclass/>

Mar 6 '07 #3

santosh wrote:
Subra wrote:
At_sea_with_C wrote:
I'm considering reading some C tutorials. I found this one.
>
http://www.crasseux.com/books/ctutorial/
(The GNU C Programming Tutorial)
>
Can anyone tell me if it is good or not? Also do you have any other
recommendations for other good tutorials?
Start reading and experimenting with K&R C. You will be a master !@c

K&R C is obsolete. Telling the OP to learn it, instead of ISO C, is
incredibly bad advice.
but the latest version of K&R (2nd edition) describes ISO C.
Admittedly
not the latest C99 standard, but C99 is so rarely implemented that
sticking
to C89 gives better portability.

http://cm.bell-labs.com/cm/cs/cbook/
To the OP:
The book at the link seems to be pretty decent. I'll look at it in
more detail later. Try the following tutorial also, (by a regular of
this group):

<http://www.eskimo.com/~scs/cclass/>

--
Nick Keighley

Mar 6 '07 #4

Nick Keighley wrote:
santosh wrote:
Subra wrote:
At_sea_with_C wrote:
I'm considering reading some C tutorials. I found this one.

http://www.crasseux.com/books/ctutorial/
(The GNU C Programming Tutorial)

Can anyone tell me if it is good or not? Also do you have any other
recommendations for other good tutorials?
Start reading and experimenting with K&R C. You will be a master !@c
K&R C is obsolete. Telling the OP to learn it, instead of ISO C, is
incredibly bad advice.

but the latest version of K&R (2nd edition) describes ISO C.
<snip>

Apologies to Subra. I didn't read his post properly. I mistook his
sentence to mean that he was recommending pre-ANSI K&R C, (the
language).

Rereading it, it's obvious he meant K&R, (the book), which is
excellent advice, though the OP did ask for tutorials.

Mar 6 '07 #5
On Tue, 06 Mar 2007 16:03:20 +0530, At_sea_with_C wrote:
Hello,

I'm considering reading some C tutorials. I found this one.

http://www.crasseux.com/books/ctutorial/
(The GNU C Programming Tutorial)

Can anyone tell me if it is good or not? Also do you have any other
recommendations for other good tutorials?

Thanks a lot.
I had a brief look at one section "Advanced operators" and found some
mistakes (typos maybe but confusing none the less).
In the subsection on the comma operator: "You can separate almost any
kind of C statment from another with a comma operator. The comma-separated
expressions are evaluated from left to right and the value...".
But the comma operator separates expressions, not statements.

In the subsection "Hidden operators and values"
"The value of an expression is the result of the operation carried out in
the expression. Increment and decrement statements have a value that is
one greater than or one less than the value of the variable they act upon,
respectively.
Consider the following two statements:
c = 5;
c++;
The expression c++ in the above context has the value 6.
"
No, it has the value 5, and after the above c has the value 6.
The value of an expression is *not* always the result of the operation.
And note the confusion in "Increment and decrement statements".

In the subsection "Postfix and prefix ++ and --"
"int my_int = 3;
printf ("%d\n", my_int++);
The increment operator is hidden in the parameter list of the printf call.
The variable my_int has a value before the ++ operator acts on it (3) and
afterwards (4).
Which value is passed to printf? Is my_int incremented before or after
the printf call? This is where the two forms of the operator (postfix and
prefix) come into play.
If the increment or decrement operator is used as a prefix, the operation is
performed before the function call. If the operator is used as a postfix, the
operation is performed after the function call."
I don't think the talk of before/after function call is helpful.
If my_int were a global variable then assuming the increment in
f(my_int++) happened after the call to f() would lead to errors!

I suppose 3 errors (I didn't notice any others) in a section is not too
bad, but I don't think I'd recommend the tutorial.
Duncan

Mar 6 '07 #6
santosh wrote, On 06/03/07 10:55:
Subra wrote:
>At_sea_with_C wrote:
>>Hello,

I'm considering reading some C tutorials. I found this one.

http://www.crasseux.com/books/ctutorial/
(The GNU C Programming Tutorial)

Can anyone tell me if it is good or not? Also do you have any other
recommendations for other good tutorials?

Thanks a lot.

--
Email: The handle, (dot seperated), at gmail dot com.
Start reading and experimenting with K&R C. You will be a master !@c

K&R C is obsolete. Telling the OP to learn it, instead of ISO C, is
incredibly bad advice.

To the OP:
The book at the link seems to be pretty decent. I'll look at it in
more detail later.
It definitely has some problems. It says to cast the value returned by
malloc and does not tell you to #include <stdlib.hfirst. At least, not
in the section about memory allocation. I consider this a serious
failure. Admittedly I only looked where I thought there were most likely
to be errors!
Try the following tutorial also, (by a regular of
this group):

<http://www.eskimo.com/~scs/cclass/>
This and K&R2 are good references. K&R2 is well worth the money and I
still refer to it. Also for reference the comp.lang.c FAQ at
http://c-faq.com/
--
Flash Gordon
Mar 6 '07 #7
On Mar 6, 3:33 pm, At_sea_with_C <blindal...@dev.null.invalidwrote:
Hello,

I'm considering reading some C tutorials. I found this one.

http://www.crasseux.com/books/ctutorial/
(The GNU C Programming Tutorial)

Can anyone tell me if it is good or not? Also do you have any other
recommendations for other good tutorials?
you will be better with learning from a hard-copy. trust me, online
learning is very different from learning form a hard-copy. i have
tried that and online learning is never a good idea.

In case of hard-copy, nothing beats K&R2. trust me and if that does
not work, try K.N. King.

BTW, the best online source is:

http://www.eskimo.com/~scs/cclass/notes/top.html
- arnuld
http://arnuld.blogspot.com

Mar 6 '07 #8
santosh wrote:
Subra wrote:
.... snip ...
>>
Start reading and experimenting with K&R C. You will be a master

K&R C is obsolete. Telling the OP to learn it, instead of ISO C,
is incredibly bad advice.
No, telling the OP to ignore it is incredibly bad advice. K&R2 is
up to date WRT C90, after including the published errata.

--
<http://www.cs.auckland.ac.nz/~pgut001/pubs/vista_cost.txt>
<http://www.securityfocus.com/columnists/423>

"A man who is right every time is not likely to do very much."
-- Francis Crick, co-discover of DNA
"There is nothing more amazing than stupidity in action."
-- Thomas Matthews
Mar 6 '07 #9

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

52
by: Tony Marston | last post by:
Several months ago I started a thread with the title "What is/is not considered to be good OO programming" which started a long and interesting discussion. I have condensed the arguments into a...
12
by: D. Layman | last post by:
Hello group, After quite a long time of consideration, I'v finally decided to switch from Java to C. Given the condition that almost without any knowledge on C and 3 years expereince on java, ,...
6
by: William Foster | last post by:
Does anyone know of a good online tutorial for C# focused on beginners. I have been to many great sites like csharpfriends, csharp-corner etc looking for good tutorials and have had no luck. Any...
10
by: Harley | last post by:
Hello, I was VERY blessed with a Christmas gift of visual studio .net from a man I hardly know who had heard of my plans of software developement. So I am probably the only person in the world who...
3
by: Roy Smith | last post by:
My wife wants to learn Python. Can anybody suggest a good tutorial for her to read? She's a PhD molecular biologist who is a pretty advanced Unix user. She mucks about with Perl scripts doing...
2
by: sara | last post by:
Hi All, I learned C++ long time ago and now I want to review all of its details in a short time like a week. I wonder if there is a good tutorial you know which I can read for this purpose....
2
by: ppuniversal | last post by:
Hello, Can someone tell a good Tutorial on Network Programming in C++, except Beej's Guide and Vijay Mukhi's tutorials. I want to make a Client Server application in C++ which will involve...
4
by: Jim Aikin | last post by:
I'd like to learn JavaScript while sitting in my easy chair with my laptop on my lap. Option 1: Buy a wireless router so I can access the plethora of online- only tutorials from anywhere in the...
75
by: Amkcoder | last post by:
http://amkcoder.fileave.com/L_BitWise.zip http://amkcoder.fileave.com/L_ptr2.zip
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.