By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
443,665 Members | 1,229 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 443,665 IT Pros & Developers. It's quick & easy.

many question on C

P: n/a
hello experts plz answer following questions::: thanks in advance.

1. Out of fgets() and gets() which function is safe to use and why?
2. What is a far pointer? where we use it?
3. What does the error 'Null Pointer Assignment' mean and what causes
this error?
4. What is near, far and huge pointers? How many bytes are occupied by
them?
5. How would you obtain segment and offset addresses from a far
address of a memory location?
6. What are bit fields? What is the use of bit fields in a Structure
declaration?
7. To which numbering system can the binary number 1101100100111100 be
easily converted to?
8. Which bit wise operator is suitable for checking whether a
particular bit is on or off?
9. How can you increase the size of a dynamically allocated array?
10. When reallocating memory if any other pointers point into the same
piece of memory do you have to readjust these other pointers or do
they get readjusted automatically?
11. What is object file? How can you access object file?
12. What do the functions atoi(), itoa() and gcvt() do?
bye,
reply me at de**************@rediffmail.com
Nov 13 '05 #1
Share this Question
Share on Google+
62 Replies


P: n/a
ROSY <de**************@rediffmail.com> scribbled the following:
hello experts plz answer following questions::: thanks in advance. 1. Out of fgets() and gets() which function is safe to use and why?
fgets(). Definitely. gets() is a bug waiting to happen.
2. What is a far pointer? where we use it?
There is no such thing.
3. What does the error 'Null Pointer Assignment' mean and what causes
this error?
Perhaps you have caused undefined behaviour by indirecting through a
null pointer.
4. What is near, far and huge pointers? How many bytes are occupied by
them?
There is no such thing.
5. How would you obtain segment and offset addresses from a far
address of a memory location?
There is no such thing.
6. What are bit fields? What is the use of bit fields in a Structure
declaration?
The idea is that multiple subsequent bitfields get compressed into the
same byte, saving space. Of course the implementation is not obliged to
do this.
7. To which numbering system can the binary number 1101100100111100 be
easily converted to?
Binary? Other than that, quadrinary, octal, hexadecimal at least. Any
whose radix is a power of 2. Why do you think this is a C question?
8. Which bit wise operator is suitable for checking whether a
particular bit is on or off?
The & operator.
9. How can you increase the size of a dynamically allocated array?
Realloc() it.
10. When reallocating memory if any other pointers point into the same
piece of memory do you have to readjust these other pointers or do
they get readjusted automatically?
Good grief. What do you think? Of course you have to readjust them by
hand. Do you expect the implementation to read your mind?
11. What is object file? How can you access object file?
An object file is what C gets translated to. Accessing it is outside
the scope of C.
12. What do the functions atoi(), itoa() and gcvt() do?


There is no such function as itoa(). atoi() is a poor man's strtol().
There is no such function as gcvt().

I hope I didn't just do your homework for you.

--
/-- Joona Palaste (pa*****@cc.helsinki.fi) ---------------------------\
| Kingpriest of "The Flying Lemon Tree" G++ FR FW+ M- #108 D+ ADA N+++|
| http://www.helsinki.fi/~palaste W++ B OP+ |
\----------------------------------------- Finland rules! ------------/
"A friend of mine is into Voodoo Acupuncture. You don't have to go into her
office. You'll just be walking down the street and... ohh, that's much better!"
- Stephen Wright
Nov 13 '05 #2

P: n/a

"ROSY" <de**************@rediffmail.com> wrote in message
news:73**************************@posting.google.c om...
hello experts plz answer following questions::: thanks in advance. Yes, sure. Here, I did your assignment for you
1. Out of fgets() and gets() which function is safe to use and why?
gets
2. What is a far pointer? where we use it?
a far pointer is a pointer that addresses data smaller than 64K
3. What does the error 'Null Pointer Assignment' mean and what causes
this error?
This error is caused when the program does a = NULL;
4. What is near, far and huge pointers? How many bytes are occupied by
them?
near uses 4 bytes, far uses 2 bytes, and huge uses 1 byte

5. How would you obtain segment and offset addresses from a far
address of a memory location?
segment is pointer/2, offset is pointer + 64K

6. What are bit fields? What is the use of bit fields in a Structure
declaration?
bit fields are arrays of integers
7. To which numbering system can the binary number 1101100100111100 be
easily converted to?
floating point
8. Which bit wise operator is suitable for checking whether a
particular bit is on or off?
the OR operator
9. How can you increase the size of a dynamically allocated array?
with strcat
10. When reallocating memory if any other pointers point into the same
piece of memory do you have to readjust these other pointers or do
they get readjusted automatically?
automatically
11. What is object file? How can you access object file?
Object file is inherited from the FILE class
12. What do the functions atoi(), itoa() and gcvt() do?
atoi: converts integer to ascii
itoa: the inverse, converts ascii to text
gcvt converts unsigned short to unsigned long
bye,


Yes, and I hope you do not ever come again

Nov 13 '05 #3

P: n/a
jacob navia <ja*********@jacob.remcomp.fr> scribbled the following:
"ROSY" <de**************@rediffmail.com> wrote in message
news:73**************************@posting.google.c om...
hello experts plz answer following questions::: thanks in advance. Yes, sure. Here, I did your assignment for you

1. Out of fgets() and gets() which function is safe to use and why?

gets


(snip)

Well done, jacob! I like those answers!

--
/-- Joona Palaste (pa*****@cc.helsinki.fi) ---------------------------\
| Kingpriest of "The Flying Lemon Tree" G++ FR FW+ M- #108 D+ ADA N+++|
| http://www.helsinki.fi/~palaste W++ B OP+ |
\----------------------------------------- Finland rules! ------------/
"My absolute aspect is probably..."
- Mato Valtonen
Nov 13 '05 #4

P: n/a
"jacob navia" <ja*********@jacob.remcomp.fr> wrote in message news:bk**********@news-reader3.wanadoo.fr...


<snip miles of arrogant quips>

Thank you, Jacob, for wasting my bandwidth so that you can feel superior.

Responses like yours are worse than the original posting. At least ROSY (probably) didn't know what she was doing.

--
#include <stdio.h>
char*f="#include <stdio.h>char*f=%c%s%c;main(){printf(f,34,f,34,10) ;}%c";
main(){printf(f,34,f,34,10);}
Nov 13 '05 #5

P: n/a
In article <73**************************@posting.google.com >,
de**************@rediffmail.com says...
hello experts plz answer following questions::: thanks in advance.

1. Out of fgets() and gets() which function is safe to use and why?
Neither. Both are very, very, scary. *shudder*. I think you might
want to just stick to something really safe and easy to use for now,
like scanf().
2. What is a far pointer? where we use it?
It is one that is located way off in the distance, like at the bottom
of a 25000 line source file.
3. What does the error 'Null Pointer Assignment' mean and what causes
this error?
A null pointer has been asked to do your homework assignment. It is
causes by students violating their school's code of conduct and/or
ethics rules by soliciting help for homework problems.
4. What is near, far and huge pointers? How many bytes are occupied by
them?
Near pointers are those very close by to your main() function. Or, those
at the very top of a 25000 line source file. FAR has already been
answered in #2. Huge pointers are those used my Microsoft to make your
machine run out of memory. Usually the words "class" and "constructor"
are found to be related to HUGE pointers.
5. How would you obtain segment and offset addresses from a far
address of a memory location?
Well, the segment would be either Home and Small Business, Education,
Federal/Government or Corporate. The offset is the distance between
the address and the nearest 7-11 convenience store.
6. What are bit fields?
Usually 10-20 acres of 0's and 1's. See also Crop Circles.
What is the use of bit fields in a Structure declaration?
Makes them portable to the widest possible variety of system platforms.
Particularly when used with signed short.
7. To which numbering system can the binary number 1101100100111100 be
easily converted to?
Base 72 is my personal favorite. Roman numerals are also possible if you
have not had too much exposure to the Playstation 2.
8. Which bit wise operator is suitable for checking whether a
particular bit is on or off?
Will, the wise operators only come with the professional edition of the
IOCCC Compiler. For your use, stick with the novice operators, they
are much less expensive and can be downloaded from Morpheus at no
charge.
9. How can you increase the size of a dynamically allocated array?
I usually make a hard copy of my source file which contains the array,
then get it slightly damp, water, beer, or Windex all work fine for
this. Then, attach some fishing weights to the bottom of the printout
and use clothespins to hold it high enough off the ground to some
convenient fixture, such as a curtain rod until it stretches out enough
to meet your size requirement.

Note: For those using an IDE, the advanced options/font selection tab
can be used to accomplish the same thing.
10. When reallocating memory if any other pointers point into the same
piece of memory do you have to readjust these other pointers or do
they get readjusted automatically?
Unfortunately, they do not adjust for you. You must instead reassign
a random address to each one, probably via rand(), which will then
cause the C runtime interpreter to automatically fix them up on the
next garbage collection cycle. Note: If you want to use this
feature, you must have selected "optimize for speed" instead of
"optimize for space".
11. What is object file? How can you access object file?
It is the file that holds all of your objects, except for those
declared as "volatile". They are stored in the stack segment
instead. The object file can only be accessed by dereferencing
non-standard platform extensions. On the IBM PC, this is done
by writing the value 0xFE to I/o port 64.
12. What do the functions atoi(), itoa() and gcvt() do?


atoi() returns the arctan of the imaginary component I, but
only if you have an Intel floating point processor. itoa()
is poorly named, but it essentially does the same thing for
a Weitek coprocessor or a Zilog Z-80 in advanced memory
consumption mode. gcvt() is obvious isn't it? It simply
gets the current volatile table for the executing thread
relative to the currently defined XML DTD. (Requires an
ANSI C99 compiler with .NET and XML extensions).

--
Randy Howard _o
2reply remove FOOBAR \<,
______________________()/ ()______________________________________________
SCO Spam-magnet: po********@sco.com
Nov 13 '05 #6

P: n/a
In article <73**************************@posting.google.com >,
ROSY wrote:
hello experts plz answer following questions::: thanks in
advance.
Hello ROSY. Please enjoy these answers for their entertainment
value only. If you want more useful answers, acquire and read
_The C Programming Language_ by Kernighan and Ritchie. Be warned
that it doesn't contain the answers to a few of your questions
that turn out not to be C related.

1. Out of fgets() and gets() which function is safe to use
and why?
Neither is safe. The slow emanation from the Hell-curst barrow of
Yogg-Sothoth will inexorably drive you mad whichever you use.
2. What is a far pointer? where we use it?
In the days of yore, the worse was "farp pointer", but the lazy
tongues of humans have eroded one of the "p"s. Back then, farp
pointers were used wherever farps are sold.
3. What does the error 'Null Pointer Assignment' mean and
what causes this error?
It means you are irrevocably doomed. The error is caused by the
slow entropy dissolving the universe.
4. What is near, far and huge pointers? How many bytes are
occupied by them?
A near, far and huge pointer would be enormous, but both intimate
and remote at the same time. It could occupy a thousand bytes and
none at all at once!
5. How would you obtain segment and offset addresses from a
far address of a memory location?
Roll the bones, and consult the resulting oracle.
6. What are bit fields? What is the use of bit fields in a
Structure declaration?
Bit fields are a useless and mostly disused dark corner of C.
Ignore them until you inevitably must maintain the code of one of
the Dark Clerics.
7. To which numbering system can the binary number
1101100100111100 be easily converted to?
At what should I throw the ball at?
In whose bag is the crayon in?
Down which dustbin did I toss this question down?
8. Which bit wise operator is suitable for checking whether
a particular bit is on or off?
You don't need to check this. All bits are on or off by
definition.
9. How can you increase the size of a dynamically allocated
array?
Make it larger.
10. When reallocating memory if any other pointers point into
the same piece of memory do you have to readjust these other
pointers or do they get readjusted automatically?
If they are farp pointers you don't, but it's just the reverse for
other farp type ones.
11. What is object file? How can you access object file?
You should object to most files. They cause nothing put pain and
damnation for those that access them.
12. What do the functions atoi(), itoa() and gcvt() do?
They probably make Jello(tm)-shots and get shnockered while sadly
watching reruns of Three's Company on TV Land.
bye,


Bye. I bid you don't look under the bed, lest the last wriggling
tentacle of the damned formian nightmare creature devour thy
compiler and all its libraries.

--
Neil Cerutti
Nov 13 '05 #7

P: n/a

"Slartibartfast" <sl******@thhgttg.net> wrote in message news:bk**********@coset.qualcomm.com...
#include <stdio.h>
char*f="#include <stdio.h>char*f=%c%s%c;main(){printf(f,34,f,34,10) ;}%c";
main(){printf(f,34,f,34,10);}


This will not work. You should eliminate the #include directive since it should
be in a line by itself, and I didn't get to avoiding a problem at the third
generation.

I would propose:

char*f="char*f=%c%s%c;main(){printf(f,34,f,34,10); }%c";
main(){printf(f,34,f,34,10);}

jacob
Nov 13 '05 #8

P: n/a
Neil Cerutti wrote:
3. What does the error 'Null Pointer Assignment' mean and
what causes this error?


It means you are irrevocably doomed. The error is caused by the
slow entropy dissolving the universe.


This is wrong. "Null pointer assignment" means that your compiler, which
others are inexplicably using without problems, is broken. You should
immediately post to comp.lang.c complaining about the shoddiness of this
product. When someone points out that discussions of the quality of your
compiler are off-topic, or when someone claims (God knows why they would do
so) that your code is hopelessly broken, demonstrate that all those years
reading bathroom walls really did add to your vocabulary.

--
Martin Ambuhl

Nov 13 '05 #9

P: n/a
In article <bk**********@news-reader3.wanadoo.fr>,
jacob navia <ja*********@jacob.remcomp.fr> wrote:

"Slartibartfast" <sl******@thhgttg.net> wrote in message
news:bk**********@coset.qualcomm.com...
#include <stdio.h>
char*f="#include <stdio.h>char*f=%c%s%c;main(){printf(f,34,f,34,10) ;}%c";
main(){printf(f,34,f,34,10);}


This will not work. You should eliminate the #include directive since it should
be in a line by itself, and I didn't get to avoiding a problem at the third
generation.

I would propose:

char*f="char*f=%c%s%c;main(){printf(f,34,f,34,10) ;}%c";
main(){printf(f,34,f,34,10);}


This invokes undefined behavior by calling a variadic function (printf)
without a prototype, plus it uses implicit int (deprecated in C90, removed
in C99) and (in C90) doesn't return a well-defined value from main.

I would recommend:
--------
int printf(const char *,...);char*f="int printf(const char *,...);\
char*f=%c%s%c;int main(){printf(f,34,f,34,10);return 0;}%c";
int main(){printf(f,34,f,34,10);return 0;}
--------
Second and third generation output are identical (with the \ line-splicing
and the newlines removed, as compared to the original), and compiles
clean with gcc -W -Wall -ansi -pedantic -O.

(Any suggestions on how to remove the ASCII dependency?)
dave

--
Dave Vandervies dj******@csclub.uwaterloo.ca

None of my copies of K&R have a "screen". Should I apply for a refund?
--Chris Dollin in comp.lang.c
Nov 13 '05 #10

P: n/a
de**************@rediffmail.com (ROSY) wrote in message news:<73**************************@posting.google. com>...
hello experts plz answer following questions::: thanks in advance.
You should know right away that this newsgroup is *not* meant to be a
substitute for a good reference manual. I use Harbison & Steele's "C:
A Reference Manual". 5th edition is the latest (I'm still on 4th ed.;
I hope to get the new one soon). It's a pretty good investment.

You should know that this group is *not* meant to be a quick and easy
way to have your homework done for you.

You should also know that questions that don't pertain directly to the
C language are considered off-topic and will either get no answer or a
smart-ass remark.

1. Out of fgets() and gets() which function is safe to use and why?
The answer should be found in your handy C reference manual (see
Harbison & Steele, 4th ed., p 356).
2. What is a far pointer? where we use it?
Far pointers are an extension to the language introduced by certain
implementations to get around addressing issues in a segmented
architecture. They are not part of the standard C language as such,
and are out of the scope of this particular newsgroup.
3. What does the error 'Null Pointer Assignment' mean and what causes
this error?
It means you screwed up. This really isn't a question about C.
4. What is near, far and huge pointers? How many bytes are occupied by
them?
See my answer to 2.
5. How would you obtain segment and offset addresses from a far
address of a memory location?
See my answer to 2.
6. What are bit fields? What is the use of bit fields in a Structure
declaration?
The answer to this should be found in your handy C reference manual
(Harbison & Steele, 4th ed., pp 136-138).
7. To which numbering system can the binary number 1101100100111100 be
easily converted to?
This is not a question about the C language.
8. Which bit wise operator is suitable for checking whether a
particular bit is on or off?
The answer to this should be found in your handy C reference manual
(Harbison & Steele, 4th ed., p 210).
9. How can you increase the size of a dynamically allocated array?
The answer to this should be found in your handy C reference manual
(Harbison & Steele, 4th ed., p 386).
10. When reallocating memory if any other pointers point into the same
piece of memory do you have to readjust these other pointers or do
they get readjusted automatically?
The answer to this should be found in your handy C reference manual
(Harbison & Steele, 4th ed., pp 387-388).
11. What is object file? How can you access object file?
This is not a question about the C language.
12. What do the functions atoi(), itoa() and gcvt() do?
atoi(): H&S4, p 336-337.
itoa(): Not a standard C function; see sprintf().
gcvt(): Not a standard C function.
bye,
reply me at de**************@rediffmail.com


Nope, you post here, you read the answers here.
Nov 13 '05 #11

P: n/a
"ROSY" <de**************@rediffmail.com> wrote in message

1. Out of fgets() and gets() which function is safe to use and why?
gets() crashes computers. fgets() crashes planes. This is because fgets() is
too difficult for the typical programmer to use safely.
2. What is a far pointer? where we use it?
typedef struct
{
int foo;
int bar;
} far;

far *ptr; /* far pointer */

An example use

void fillfar(far *farptr)
{
farptr->foo = 0;
farptr->bar = 1;
}
3. What does the error 'Null Pointer Assignment' mean and what
causes this error?
It means that NULL has been assigned to a pointer. It occurs when a pointer
is assigned to NULL.
4. What is near, far and huge pointers? How many bytes are occupied > by them? See above for far *s. near and huge pointers can be defined similarly. It is
up to the compiler to decide how many bytes to assign to each pointer.
5. How would you obtain segment and offset addresses from a far
address of a memory location?
These are obviously subfields of the far address, so you mask off the bits
of the address that you don't want.
6. What are bit fields? What is the use of bit fields in a Structure
declaration?
Bitfields are a nice idea. Unfortunately they don't have many uses because
they are typically implemented so poorly, and because they don't necessarily
match any layout in memory. Use AND and OR to perform logical operations on
integers instead.
7. To which numbering system can the binary number
1101100100111100 be easily converted to?
Fibonnacci. Numbers go 1, 1, 2, 3, 5, 8 etc. Very useful for error tolerant
computing, since you never have two ones in a row.
8. Which bit wise operator is suitable for checking whether a
particular bit is on or off?
Try AND work this out for youself, OR ask in comp.programming if you canNOT
do this.
9. How can you increase the size of a dynamically allocated array?
Allocate another array, and copy the contents to it, or call a function
which does this.
10. When reallocating memory if any other pointers point into the same
piece of memory do you have to readjust these other pointers or do
they get readjusted automatically?
I'll give you this one. C has no automatic memory management features -
malloc(), realloc() and free() are just implemented as normal functions that
happen to have access to a large global pool of memory.
If you reallocate a block, it will probably move in memory, and all pointers
to it will become invalid and will not be updated.
11. What is object file? How can you access object file?
"object file" would be a file full of objections. Access like this

FILE *fp;
fp = fopen("file.obj", "rb");
12. What do the functions atoi(), itoa() and gcvt() do?

atoi() is a lie because it doesn't necessarily convert ascii to integer,
sometimes it converts other character systems instead.
itoa() and gcvt() do whatever your implemeter says they do, since they are
not C standard library functions.
Nov 13 '05 #12

P: n/a

Slartibartfast <sl******@thhgttg.net> wrote in message
news:bk**********@coset.qualcomm.com...
"jacob navia" <ja*********@jacob.remcomp.fr> wrote in message news:bk**********@news-reader3.wanadoo.fr...


<snip miles of arrogant quips>


Not arrogant, but humorous.

Thank you, Jacob, for wasting my bandwidth so that you can feel superior.
I think Jacob's sense of humor is superior to yours. :-)
Responses like yours are worse than the original posting.
Really? I find requests to do classwork quite annoying.
This annoyance is sometimes reduced when a regular responds
with humor. Thanks, Jacob. :-)
At least ROSY (probably) didn't know what she was doing.


ROSY knew exactly what she was doing. Trying to cheat
on classwork.

-Mike

Nov 13 '05 #13

P: n/a

"Mike Wahler" <mk******@mkwahler.net> wrote in message
news:Mf*****************@newsread4.news.pas.earthl ink.net...

Slartibartfast <sl******@thhgttg.net> wrote in message
At least ROSY (probably) didn't know what she was doing.


ROSY knew exactly what she was doing. Trying to cheat
on classwork.


And hence devaluating my degree by lowering the average and
peoples expectation of my performance level. In my opinion
she deserves the mild abuse she is getting.

Why people study somoething that is of no interest to them is
beyond me. I find in stupid and idiotic. Why do they not spend
their time in a more constructive manner?

--
Thomas.
Nov 13 '05 #14

P: n/a
"jacob navia" <ja*********@jacob.remcomp.fr> wrote:
"ROSY" <de**************@rediffmail.com> wrote:
hello experts plz answer following questions::: thanks in advance.
2. What is a far pointer? where we use it?


a far pointer is a pointer that addresses data smaller than 64K


Actually, this is correct. The objects pointed to really do have to
remain < 64K. Only huge pointers allow the target of the pointer to
exceed 64K.
7. To which numbering system can the binary number 1101100100111100 be
easily converted to?


floating point


Depending on your definition of easy ... the complex number base 1+i
would be more convoluted, and surreal numbers would probably be even
more interesting.
8. Which bit wise operator is suitable for checking whether a
particular bit is on or off?


the OR operator


Actually by ORing the other bits and compare the result with ~0 is a
sufficient test, and on some RISCs not any different in performance
than using other operators (like & or <<).

--
Paul Hsieh
http://www.pobox.com/~qed/
http://bstring.sf.net/
Nov 13 '05 #15

P: n/a
dj******@csclub.uwaterloo.ca (Dave Vandervies) wrote in message news:<bk**********@tabloid.uwaterloo.ca>...
In article <bk**********@news-reader3.wanadoo.fr>,
jacob navia <ja*********@jacob.remcomp.fr> wrote:

"Slartibartfast" <sl******@thhgttg.net> wrote in message
news:bk**********@coset.qualcomm.com...
#include <stdio.h>
char*f="#include <stdio.h>char*f=%c%s%c;main(){printf(f,34,f,34,10) ;}%c";
main(){printf(f,34,f,34,10);}


This will not work. You should eliminate the #include directive since it should
be in a line by itself, and I didn't get to avoiding a problem at the third
generation.

I would propose:

char*f="char*f=%c%s%c;main(){printf(f,34,f,34,10) ;}%c";
main(){printf(f,34,f,34,10);}


This invokes undefined behavior by calling a variadic function (printf)
without a prototype, plus it uses implicit int (deprecated in C90, removed
in C99) and (in C90) doesn't return a well-defined value from main.

I would recommend:
--------
int printf(const char *,...);char*f="int printf(const char *,...);\
char*f=%c%s%c;int main(){printf(f,34,f,34,10);return 0;}%c";
int main(){printf(f,34,f,34,10);return 0;}
--------
Second and third generation output are identical (with the \ line-splicing
and the newlines removed, as compared to the original), and compiles
clean with gcc -W -Wall -ansi -pedantic -O.

(Any suggestions on how to remove the ASCII dependency?)
dave


I'm new to clc, but i *think* I have a guess.
Can't you replace the string _34_ (using underscore to delimit the
boundaries of the string for reasons made obvious in the next
instance) by the string _'\"'_ in both cases? It seems that what's
wanted is the 'quote' character...
And is it ok to simply declare printf without #including <stdio.h>?
Nov 13 '05 #16

P: n/a
dj******@csclub.uwaterloo.ca (Dave Vandervies) wrote in message news:<bk**********@tabloid.uwaterloo.ca>...
In article <bk**********@news-reader3.wanadoo.fr>,
jacob navia <ja*********@jacob.remcomp.fr> wrote:

"Slartibartfast" <sl******@thhgttg.net> wrote in message
news:bk**********@coset.qualcomm.com...
#include <stdio.h>
char*f="#include <stdio.h>char*f=%c%s%c;main(){printf(f,34,f,34,10) ;}%c";
main(){printf(f,34,f,34,10);}


This will not work. You should eliminate the #include directive since it should
be in a line by itself, and I didn't get to avoiding a problem at the third
generation.

I would propose:

char*f="char*f=%c%s%c;main(){printf(f,34,f,34,10) ;}%c";
main(){printf(f,34,f,34,10);}


This invokes undefined behavior by calling a variadic function (printf)
without a prototype, plus it uses implicit int (deprecated in C90, removed
in C99) and (in C90) doesn't return a well-defined value from main.

I would recommend:
--------
int printf(const char *,...);char*f="int printf(const char *,...);\
char*f=%c%s%c;int main(){printf(f,34,f,34,10);return 0;}%c";
int main(){printf(f,34,f,34,10);return 0;}
--------
Second and third generation output are identical (with the \ line-splicing
and the newlines removed, as compared to the original), and compiles
clean with gcc -W -Wall -ansi -pedantic -O.

(Any suggestions on how to remove the ASCII dependency?)
dave


I'm new to clc, but i *think* I have a guess.
Can't you replace the string _34_ (using underscore to delimit the
boundaries of the string for reasons made obvious in the next
instance) by the string _'\"'_ in both cases? It seems that what's
wanted is the 'quote' character...
And is it ok to simply declare printf without #including <stdio.h>?
Nov 13 '05 #17

P: n/a
Daniel <Ps*************@hotmail.com> scribbled the following:
dj******@csclub.uwaterloo.ca (Dave Vandervies) wrote in message news:<bk**********@tabloid.uwaterloo.ca>...
In article <bk**********@news-reader3.wanadoo.fr>,
jacob navia <ja*********@jacob.remcomp.fr> wrote:
>
>"Slartibartfast" <sl******@thhgttg.net> wrote in message
>news:bk**********@coset.qualcomm.com...
>> #include <stdio.h>
>> char*f="#include <stdio.h>char*f=%c%s%c;main(){printf(f,34,f,34,10) ;}%c";
>> main(){printf(f,34,f,34,10);}
>
>This will not work. You should eliminate the #include directive since it should
>be in a line by itself, and I didn't get to avoiding a problem at the third
>generation.
>
>I would propose:
>
>char*f="char*f=%c%s%c;main(){printf(f,34,f,34,10) ;}%c";
>main(){printf(f,34,f,34,10);}
This invokes undefined behavior by calling a variadic function (printf)
without a prototype, plus it uses implicit int (deprecated in C90, removed
in C99) and (in C90) doesn't return a well-defined value from main.

I would recommend:
--------
int printf(const char *,...);char*f="int printf(const char *,...);\
char*f=%c%s%c;int main(){printf(f,34,f,34,10);return 0;}%c";
int main(){printf(f,34,f,34,10);return 0;}
--------
Second and third generation output are identical (with the \ line-splicing
and the newlines removed, as compared to the original), and compiles
clean with gcc -W -Wall -ansi -pedantic -O.

(Any suggestions on how to remove the ASCII dependency?)

I'm new to clc, but i *think* I have a guess.
Can't you replace the string _34_ (using underscore to delimit the
boundaries of the string for reasons made obvious in the next
instance) by the string _'\"'_ in both cases? It seems that what's
wanted is the 'quote' character...
And is it ok to simply declare printf without #including <stdio.h>?


Yes on both counts. You got the quote thing right, and yes, it is OK to
declare printf() without #including <stdlib.h>. In fact, all #including
<stdio.h> DOES is declare printf() and a bunch of other functions and
macros, most of which aren't even used in the above program. The
compiler only wants the declaration. It doesn't care a hoot about which
file the preprocessor got it from.

--
/-- Joona Palaste (pa*****@cc.helsinki.fi) ---------------------------\
| Kingpriest of "The Flying Lemon Tree" G++ FR FW+ M- #108 D+ ADA N+++|
| http://www.helsinki.fi/~palaste W++ B OP+ |
\----------------------------------------- Finland rules! ------------/
"To know me IS to love me."
- JIPsoft
Nov 13 '05 #18

P: n/a
In article <97**************************@posting.google.com >,
Daniel <Ps*************@hotmail.com> wrote:
dj******@csclub.uwaterloo.ca (Dave Vandervies) wrote in message
news:<bk**********@tabloid.uwaterloo.ca>...
I would recommend:
--------
int printf(const char *,...);char*f="int printf(const char *,...);\
char*f=%c%s%c;int main(){printf(f,34,f,34,10);return 0;}%c";
int main(){printf(f,34,f,34,10);return 0;}
--------
Second and third generation output are identical (with the \ line-splicing
and the newlines removed, as compared to the original), and compiles
clean with gcc -W -Wall -ansi -pedantic -O.

(Any suggestions on how to remove the ASCII dependency?)
dave


I'm new to clc, but i *think* I have a guess.
Can't you replace the string _34_ (using underscore to delimit the
boundaries of the string for reasons made obvious in the next
instance) by the string _'\"'_ in both cases? It seems that what's
wanted is the 'quote' character...


Almost, but not quite. (I spent a while chasing this before I worked out
what the problem with it was, and didn't look too hard for a solution,
so there may be a simple solution that I just didn't see.) What's wanted
is the double-quote character `"', but replacing the _34_ with _'\"'_
runs into the problem that the backslash needs to be escaped in the
string literal to get an escaped `"' in the output.
So if you start with this:
--------
int printf(const char *,...);char*f="int printf(const char *,...);\
char*f=%c%s%c;int main(){printf(f,'\"',f,'\"',10);return 0;}%c";
int main(){printf(f,'\"',f,'\"',10);return 0;}
--------
It outputs this (lines re-wrapped by me):
--------
int printf(const char *,...);char*f="int printf(const char *,...);\
char*f=%c%s%c;int main(){printf(f,'"',f,'"',10);return 0;}%c";
int main(){printf(f,'"',f,'"',10);return 0;}
--------
But the string literal no longer has the double quotes escaped, so
the compiler will choke on it trying to compile the output to get a
second-generation program.

And is it ok to simply declare printf without #including <stdio.h>?


Yep, though it's bad form unless you're trying to play tricks like this
one (which could be argued to be bad form anyways).

The standard headers define types and macros, and declare functions.
As far as the programmer is concerned (though it need not be implemented
this way), including the header is the same as defining the types and
macros and declaring the functions by hand in your code; some of these
(f'rexample, the type size_t and any function that returns a size_t or
takes one as an argument) depend on knowledge that the programmer doesn't
have (or at least should ignore unless it's absolutely necessary), so
including the header is the only portable way to get them, but since
printf only takes and returns basic types (and it's the only thing from
stdio.h that this program needs) including its definition and leaving
out the rest of <stdio.h> is perfectly valid.
dave

--
Dave Vandervies dj******@csclub.uwaterloo.ca
Once a term we sacrifice telephone books in a vain attempt to teach CS 134
students binary search, so we can use a fairly large supply.
--Paul Nijjar in uw.cs.general
Nov 13 '05 #19

P: n/a
Dave Vandervies wrote:
...
int printf(const char *,...);char*f="int printf(const char *,...);\
char*f=%c%s%c;int main(){printf(f,34,f,34,10);return 0;}%c";
int main(){printf(f,34,f,34,10);return 0;} ....(Any suggestions on how to remove the ASCII dependency?)


It's an old problem emerging every now and then in clc.

Have a look at:
http://www.nyx.net/~gthompso/self_c.txt
http://sreeram.org/programming/selfreplicating.php

Jirka

Nov 13 '05 #20

P: n/a
>>> "ROSY" <de**************@rediffmail.com> wrote in message

Hello Calcutta,

Buy a bottle of Elmer's glue, and empty it on a chair and sit
down, with your C text book, and do your home work. You lazy "Rosy"
bum.
Nov 13 '05 #21

P: n/a
On 18 Sep 2003 06:31:12 -0700, in comp.lang.c , qe*@pobox.com (Paul
Hsieh) wrote:
"jacob navia" <ja*********@jacob.remcomp.fr> wrote:
"ROSY" <de**************@rediffmail.com> wrote:
> hello experts plz answer following questions::: thanks in advance.
> 2. What is a far pointer? where we use it?
a far pointer is a pointer that addresses data smaller than 64K


note that far is not a C keyword, its some antique intel-specific
extension.
Actually, this is correct. The objects pointed to really do have to
remain < 64K. Only huge pointers allow the target of the pointer to
exceed 64K.


Note that while C only requires a hosted implementation to support 64K
in one object, most implementations support far larger objects.
--
Mark McIntyre
CLC FAQ <http://www.eskimo.com/~scs/C-faq/top.html>
CLC readme: <http://www.angelfire.com/ms3/bchambless0/welcome_to_clc.html>
Nov 13 '05 #22

P: n/a
Dave Vandervies wrote:
Daniel <Ps*************@hotmail.com> wrote:
.... snip ...
And is it ok to simply declare printf without #including <stdio.h>?


Yep, though it's bad form unless you're trying to play tricks like
this one (which could be argued to be bad form anyways).

The standard headers define types and macros, and declare functions.
As far as the programmer is concerned (though it need not be implemented
this way), including the header is the same as defining the types and
macros and declaring the functions by hand in your code; some of these
(f'rexample, the type size_t and any function that returns a size_t or
takes one as an argument) depend on knowledge that the programmer doesn't
have (or at least should ignore unless it's absolutely necessary), so
including the header is the only portable way to get them, but since
printf only takes and returns basic types (and it's the only thing from
stdio.h that this program needs) including its definition and leaving
out the rest of <stdio.h> is perfectly valid.


I disagree. For example, printf may be implemented as a macro on
fprintf, and needs to know the definitions of FILE* and stdout.
These come with stdio.h, but not with a raw declaration.

Why use such error prone shortcuts?

--
Replies should be to the newsgroup
Chuck Falconer, on vacation.
Nov 13 '05 #23

P: n/a
LibraryUser <de**********@made.invalid> writes:
[...]
I disagree. For example, printf may be implemented as a macro on
fprintf, and needs to know the definitions of FILE* and stdout.
These come with stdio.h, but not with a raw declaration.
Redeclaring printf(), assuming it's done correctly, is perfectly safe.
Even if the implementation defines it in <stdio.h> as a macro, it must
also be defined as a function; if you want to call the function
directly after including <stdio.h>, you can "#undef" the macro or
enclose the name in parentheses.

This is covered in section 7.1.4 of the standard.
Why use such error prone shortcuts?


In this case, the point is writing deliberately obfuscated code. I
think the idea was that declaring printf() allowed the entire program
source to be on a single line; a "#include <stdio.h>" directive has to
be on a line by itself. In any real application, of course, such
obfuscation is inexcusable; just use the "#include" and move on.

--
Keith Thompson (The_Other_Keith) ks*@cts.com <http://www.ghoti.net/~kst>
San Diego Supercomputer Center <*> <http://www.sdsc.edu/~kst>
Schroedinger does Shakespeare: "To be *and* not to be"
Nov 13 '05 #24

P: n/a
LibraryUser wrote:

Dave Vandervies wrote:
Daniel <Ps*************@hotmail.com> wrote:
... snip ...
And is it ok to simply declare printf without #including <stdio.h>?


Yep, though it's bad form unless you're trying to play tricks like
this one (which could be argued to be bad form anyways).

The standard headers define types and macros, and declare functions.
As far as the programmer is concerned (though it need not be implemented
this way), including the header is the same as defining the types and
macros and declaring the functions by hand in your code; some of these
(f'rexample, the type size_t and any function that returns a size_t or
takes one as an argument) depend on knowledge that the programmer doesn't
have (or at least should ignore unless it's absolutely necessary), so
including the header is the only portable way to get them, but since
printf only takes and returns basic types (and it's the only thing from
stdio.h that this program needs) including its definition and leaving
out the rest of <stdio.h> is perfectly valid.


I disagree. For example, printf may be implemented as a macro on
fprintf, and needs to know the definitions of FILE* and stdout.
These come with stdio.h, but not with a raw declaration.


<stdio.h> may indeed define a printf() macro to accomplish
the tasks of the printf() function. However, the implementation
must supply an actual function implementation of printf() in
addition to any such macro-ized alternative. Otherwise,

#include <stdio.h>
...
int (*out)(const char*, ...);
out = printf;
out ("Hello, world!\n");

.... would not work, as it must.
Why use such error prone shortcuts?


Agreed: It's silly verging on stupid to write freelance
declarations when the headers exist to do it for you. The
headers are (by the time you get them) immune to typos, while
your own maverick declarations are not. And, as Henry Spencer
points out in "The Ten Commandments for C Programmers," only
the implementation's own headers know the magical incantations
that make the declaration not only correct, but efficient.

I can't begin to tell you how many bugs I've fixed by
getting rid of

extern int errno;
extern char *malloc(int);

.... and the like.

--
Er*********@sun.com
Nov 13 '05 #25

P: n/a
LibraryUser <de**********@made.invalid> wrote:
Dave Vandervies wrote:
Daniel <Ps*************@hotmail.com> wrote:

... snip ...
>And is it ok to simply declare printf without #including <stdio.h>?


Yep, though it's bad form unless you're trying to play tricks like
this one (which could be argued to be bad form anyways).

The standard headers define types and macros, and declare functions.
As far as the programmer is concerned (though it need not be implemented
this way), including the header is the same as defining the types and
macros and declaring the functions by hand in your code; some of these
(f'rexample, the type size_t and any function that returns a size_t or
takes one as an argument) depend on knowledge that the programmer doesn't
have (or at least should ignore unless it's absolutely necessary), so
including the header is the only portable way to get them, but since
printf only takes and returns basic types (and it's the only thing from
stdio.h that this program needs) including its definition and leaving
out the rest of <stdio.h> is perfectly valid.


I disagree. For example, printf may be implemented as a macro on
fprintf, and needs to know the definitions of FILE* and stdout.
These come with stdio.h, but not with a raw declaration.


I'm afraid I must here invoke the catchphrase and recommend that you
engage your brain before posting...

If you haven't included stdio.h, and haven't defined one yourself, then
you can't have a macro version of printf. Macros don't come from thin
air (and there *must* be a function version as well, even if there's also
a macro version defined in stdio.h).

- Kevin.

Nov 13 '05 #26

P: n/a
ss********@yahoo.com (messier8182) wrote in message news:<e1*************************@posting.google.c om>...
"ROSY" <de**************@rediffmail.com> wrote in message


Hello Calcutta,

Buy a bottle of Elmer's glue, and empty it on a chair and sit
down, with your C text book, and do your home work. You lazy "Rosy"
bum.


As the OP is from India, I have to say few words...

You have good resources & so you easily make fun of others. Most of
the Indians suffer from some kind of myths, that's why the OP has
posted the DOS programming questions to CLC. Also, in few places
Internet is quite new; most of the people don't know about
www.google.com or how to Google. Few people also don't know what is
NG; there is also a myth that NG is a place where you can get all
answers; few people don't even know about FAQ.

I am sure, for the people who visit CLC for decades, these kind of
silly questions will be irritating. But, any fun answers that you
provide will make the person so crazy. Hope, you all understand what I
mean....

I wish I could see a Indian expert like Emmanuel Delahaye sometimes
soon in CLC.

---
"If there is a God, he must be a sadist!"
http://RajeshAnbiah.itgo.com - The simple site!
Email: rrjanbiah-at-Y!com
Nov 13 '05 #27

P: n/a
"R. Rajesh Jeba Anbiah" <ng**********@rediffmail.com> wrote in message news:ab**************************@posting.google.c om...
ss********@yahoo.com (messier8182) wrote in message news:<e1*************************@posting.google.c om>...
>> "ROSY" <de**************@rediffmail.com> wrote in message


Hello Calcutta,

Buy a bottle of Elmer's glue, and empty it on a chair and sit
down, with your C text book, and do your home work. You lazy "Rosy"
bum.


As the OP is from India, I have to say few words...

You have good resources & so you easily make fun of others. Most of
the Indians suffer from some kind of myths, that's why the OP has
posted the DOS programming questions to CLC. Also, in few places
Internet is quite new; most of the people don't know about
www.google.com or how to Google. Few people also don't know what is
NG; there is also a myth that NG is a place where you can get all
answers; few people don't even know about FAQ.

I am sure, for the people who visit CLC for decades, these kind of
silly questions will be irritating. But, any fun answers that you
provide will make the person so crazy. Hope, you all understand what I
mean....

I wish I could see a Indian expert like Emmanuel Delahaye sometimes
soon in CLC.


I'm afraid you're wasting your time on some of this lot.

There are good people here, but there is also a disproportionate number who like nothing better than to indulge in petty point
scoring. Note the amount of effort wasted trawling through my sig, fer chrissakes - a good deal of that analysis was even plain
wrong.

If only people would put that much effort into being helpful. Even a rejection could be phrased respectfully, but the Internet seems
to have attracted huge numbers of dysfunctional types who forget that they're dealing with real people.

--
#include <stdio.h>
char*f="#include <stdio.h>%cchar*f=%c%s%c;%cint main(void){printf(f,10,34,f,34,10,10);return 0;}%c";
int main(void){printf(f,10,34,f,34,10,10);return 0;}
Nov 13 '05 #28

P: n/a
Slartibartfast wrote:
"R. Rajesh Jeba Anbiah" <ng**********@rediffmail.com> wrote
ss********@yahoo.com (messier8182) wrote in message

Buy a bottle of Elmer's glue, and empty it on a chair and sit
down, with your C text book, and do your home work. You lazy
"Rosy" bum.


As the OP is from India, I have to say few words...

You have good resources & so you easily make fun of others. Most
of the Indians suffer from some kind of myths, that's why the OP
has posted the DOS programming questions to CLC. Also, in few
places Internet is quite new; most of the people don't know
about www.google.com or how to Google. Few people also don't
know what is NG; there is also a myth that NG is a place where
you can get all answers; few people don't even know about FAQ.

I am sure, for the people who visit CLC for decades, these kind
of silly questions will be irritating. But, any fun answers that
you provide will make the person so crazy. Hope, you all
understand what I mean....

I wish I could see a Indian expert like Emmanuel Delahaye
sometimes soon in CLC.


I'm afraid you're wasting your time on some of this lot.

There are good people here, but there is also a disproportionate
number who like nothing better than to indulge in petty point
scoring. Note the amount of effort wasted trawling through my
sig, fer chrissakes - a good deal of that analysis was even
plain wrong.

If only people would put that much effort into being helpful.
Even a rejection could be phrased respectfully, but the Internet
seems to have attracted huge numbers of dysfunctional types who
forget that they're dealing with real people.


However it does not seem inappropriate for people to lurk (i.e.
simply read) the newsgroup for a while before jumping in. This
gives them contact with any FAQ and conventions to be observed.
For example, you are posting with excessively long lines (they
should never exceed 79, better 65, chars) and thus causing either
ugly reply formatting or the effort to reformat your words.

Most semi-polite people do not walk up to a conversation and
immediately interject their own thoughts irrespective of the
existing subject.

At the same time there is no excuse for messier8182s rudeness.

--
Replies should be to the newsgroup
Chuck Falconer, on vacation.
Nov 13 '05 #29

P: n/a

"R. Rajesh Jeba Anbiah" <ng**********@rediffmail.com> wrote in message
news:ab**************************@posting.google.c om...
ss********@yahoo.com (messier8182) wrote in message news:<e1*************************@posting.google.c om>...
As the OP is from India, I have to say few words...

You have good resources & so you easily make fun of others. Most of
the Indians suffer from some kind of myths, that's why the OP has
posted the DOS programming questions to CLC.
He is a student in India, trying to get by without doing his/her homework.

This is the same in India or in China or in Chile, and it doesn't actually matter
at all where this student actually is.
Also, in few places
Internet is quite new; most of the people don't know about
www.google.com or how to Google. Few people also don't know what is
NG; there is also a myth that NG is a place where you can get all
answers; few people don't even know about FAQ.

No. This student knew enough to post a message in c.l.c to avoid working for
his/her homework. Indian people are very advanced in Internet using,
they have their own computer hardware/software, some super computers have
been built in India, and I wouldn't say that they are unqualified sorry.
I am sure, for the people who visit CLC for decades, these kind of
silly questions will be irritating. But, any fun answers that you
provide will make the person so crazy. Hope, you all understand what I
mean....
What irritated me was that lack of interest in programming that shows when
instead of trying to learn, lazyiness sets in, and you just post a message to
a newsgroup instead of trying to solve the teacher's questions. I do not mind
students that post asking why they couldn't get this or that to work. That shows
that they are trying to learn not just cutting/pasting the answers from a
newsgroup that should work for them you see?

I wish I could see a Indian expert like Emmanuel Delahaye sometimes
soon in CLC.


I do not doubt that there are expert Indian programmers. Mathematics has
a long tradition in India, and they have bright people. But this ROSY is not
going to get somewhere if he/she doesn't start learning instead of trying
to cheat.

And this is true in India, and anywhere. Students trying to cheat is surely an
international habit, quite independent of nationality!

Let's not mix everything up. Nobody is generalizing from an indian student
that wants to cheat the lesson, to indian programmers, or whatever. Myself
I didn't know where this student came from, neither I cared.

jacob
Nov 13 '05 #30

P: n/a
"jacob navia" <ja*********@jacob.remcomp.fr> wrote in message news:<bk**********@news-reader1.wanadoo.fr>...
"R. Rajesh Jeba Anbiah" <ng**********@rediffmail.com> wrote in message
news:ab**************************@posting.google.c om...
ss********@yahoo.com (messier8182) wrote in message news:<e1*************************@posting.google.c om>...


He is a student in India, trying to get by without doing his/her homework.
He may be a enthusiastic student or a professor or a programmer. But,
I'm sure the questions are not homework problems.
No. This student knew enough to post a message in c.l.c to avoid working for
his/her homework.
All the people who know CLC are not smarter; in my experience even
people who post arrogant answers like RTFM or fun answers are not even
experts.
Indian people are very advanced in Internet using,
they have their own computer hardware/software, some super computers have
been built in India,
I guess, you're talking about those elite people who is less than 1%
of total population.
I do not doubt that there are expert Indian programmers. Mathematics has
a long tradition in India, and they have bright people.


That is certainly because of lack of resources. We have resources on
Mathematics that are of 10,000 years old. We have the resources that
say 0!=0 (which most of the non-Indians don't know or accept). But, we
don't have much resources on Computers. I don't know, how would you
learn C, if you don't have a PC or a book...

Well, my intention is not to mess with you or to start another flame
war. My intention was to tell the truth that how such a fun answer
will hurt a humanbeing who lag others purely because of resources.

IOW, you're hunger for a bread; you ask your neighbour. He may tell
you "get it from shop" or "sorry, I don't have it". Instead he tells
you "Yes I have it" and gives you bunch of bullshits; think for a
while, how would you feel....

EOD
---
"I don't believe in the God who doesn't give me food, but shows me
heaven!"--Swami Vivekanandha
http://guideme.itgo.com/atozofc/ - "A to Z of C" Project
Email: rrjanbiah-at-Y!com
Nov 13 '05 #31

P: n/a
R. Rajesh Jeba Anbiah wrote:

"jacob navia" <ja*********@jacob.remcomp.fr> wrote in message
news:<bk**********@news-reader1.wanadoo.fr>...
"R. Rajesh Jeba Anbiah" <ng**********@rediffmail.com>
wrote in message
news:ab**************************@posting.google.c om...
ss********@yahoo.com (messier8182) wrote in message

news:<e1*************************@posting.google.c om>...


He is a student in India,
trying to get by without doing his/her homework.


He may be a enthusiastic student or a professor
or a programmer.
But, I'm sure the questions are not homework problems.


Countless,
is the number of times that I've pondered this point,
while programming:

"To which numbering system can the binary number
1101100100111100 be easily converted to?"

--
pete
Nov 13 '05 #32

P: n/a
"LibraryUser" <de**********@made.invalid> wrote in message news:3F***************@made.invalid...
For example, you are posting with excessively long lines (they
should never exceed 79, better 65, chars) and thus causing either
ugly reply formatting or the effort to reformat your words.


The prosecution rests, m'lud.

--
#include <stdio.h>
char*f="#include <stdio.h>%cchar*f=%c%s%c;%cint main(void){printf(f,10,34,f,34,10,10);return 0;}%c";
int main(void){printf(f,10,34,f,34,10,10);return 0;}
Nov 13 '05 #33

P: n/a
ng**********@rediffmail.com (R. Rajesh Jeba Anbiah) wrote in message news:<ab**************************@posting.google. com>...
"jacob navia" <ja*********@jacob.remcomp.fr> wrote in message news:<bk**********@news-reader1.wanadoo.fr>...
"R. Rajesh Jeba Anbiah" <ng**********@rediffmail.com> wrote in message
news:ab**************************@posting.google.c om...
ss********@yahoo.com (messier8182) wrote in message news:<e1*************************@posting.google.c om>...


He is a student in India, trying to get by without doing his/her homework.


He may be a enthusiastic student or a professor or a programmer. But,
I'm sure the questions are not homework problems.


Even so, the answers to these questions are easily found in any good C
reference manual, for which this newsgroup is not meant to be a
substitute. This person needs to get into the habit of checking a
reference manual *first*, then doing a Web search, and *then* asking a
question here if he or she didn't find the answer he or she was
looking for.
No. This student knew enough to post a message in c.l.c to avoid working for
his/her homework.
All the people who know CLC are not smarter; in my experience even
people who post arrogant answers like RTFM or fun answers are not even
experts.


True enough.
Indian people are very advanced in Internet using,
they have their own computer hardware/software, some super computers have
been built in India,


I guess, you're talking about those elite people who is less than 1%
of total population.
I do not doubt that there are expert Indian programmers. Mathematics has
a long tradition in India, and they have bright people.


That is certainly because of lack of resources. We have resources on
Mathematics that are of 10,000 years old. We have the resources that
say 0!=0 (which most of the non-Indians don't know or accept). But, we
don't have much resources on Computers. I don't know, how would you
learn C, if you don't have a PC or a book...


Well, learning how to program in C without a PC available would be
difficult, to say the least. I don't know what the situation is like
in India, but I would think that there would be *some* reference
manuals available.

Well, my intention is not to mess with you or to start another flame
war. My intention was to tell the truth that how such a fun answer
will hurt a humanbeing who lag others purely because of resources.

But we can't know that, can we? For all we know this could be someone
with all the resources in the world available for use, and he or she
just chooses to be lazy. Unless we're told "I don't have a manual and
I can't use the Web", we have to assume they have the basic materials
available.

The truth is, hundreds of students *have* posted to this newsgroup
asking us to do their homework for them, or decided asking here was
simpler than looking it up in their handy reference manual. And it's
because of those people who are lazy and irresponsible that we tend to
be short with anyone asking basic questions.
IOW, you're hunger for a bread; you ask your neighbour. He may tell
you "get it from shop" or "sorry, I don't have it". Instead he tells
you "Yes I have it" and gives you bunch of bullshits; think for a
while, how would you feel....

I was once a clueless newbie, and I got spanked here myself some years
ago. And yet I keep coming back. Funny, that.
EOD
---
"I don't believe in the God who doesn't give me food, but shows me
heaven!"--Swami Vivekanandha
http://guideme.itgo.com/atozofc/ - "A to Z of C" Project
Email: rrjanbiah-at-Y!com

Nov 13 '05 #34

P: n/a
"John Bode" <jo*******@my-deja.com> wrote in message news:43**************************@posting.google.c om...

<....snip....>
He may be a enthusiastic student or a professor or a programmer. But,
I'm sure the questions are not homework problems.
Even so, the answers to these questions are easily found in any good C
reference manual, for which this newsgroup is not meant to be a
substitute. This person needs to get into the habit of checking a
reference manual *first*, then doing a Web search, and *then* asking a
question here if he or she didn't find the answer he or she was
looking for.


Very true. But we could at least be civil in the way we tell someone his or
her post was inappropriate, couldn't we??

<....more snip....>
The truth is, hundreds of students *have* posted to this newsgroup
asking us to do their homework for them, or decided asking here was
simpler than looking it up in their handy reference manual. And it's
because of those people who are lazy and irresponsible that we tend to
be short with anyone asking basic questions.


.....and it's even shorter not to respond at all.

--
#include <stdio.h>
char*f="#include <stdio.h>%cchar*f=%c%s%c;%cint main(void){printf(f,10,34,f,34,10,10);return 0;}%c";
int main(void){printf(f,10,34,f,34,10,10);return 0;}
Nov 13 '05 #35

P: n/a
Slartibartfast wrote:
"John Bode" <jo*******@my-deja.com> wrote in message
news:43**************************@posting.google.c om...
The truth is, hundreds of students *have* posted to this newsgroup
asking us to do their homework for them, or decided asking here was
simpler than looking it up in their handy reference manual. And it's
because of those people who are lazy and irresponsible that we tend to
be short with anyone asking basic questions.


....and it's even shorter not to respond at all.


But that encourages the idea that it's OK to ask without thinking
first, and we don't want to do that either.

--
Chris "electric hedgehog" Dollin
C FAQs at: http://www.faqs.org/faqs/by-newsgrou...mp.lang.c.html
C welcome: http://www.angelfire.com/ms3/bchambl...me_to_clc.html
Nov 13 '05 #36

P: n/a
R. Rajesh Jeba Anbiah wrote:
"jacob navia" <ja*********@jacob.remcomp.fr> wrote in message
news:<bk**********@news-reader1.wanadoo.fr>...

He is a student in India, trying to get by without doing his/her
homework.
He may be a enthusiastic student or a professor or a programmer. But,
I'm sure the questions are not homework problems.


They sure look like homework questions to me. What makes you so sure they're
not?
No. This student knew enough to post a message in c.l.c to avoid working
for his/her homework.


All the people who know CLC are not smarter;


It is true that many people who use comp.lang.c are not smarter than the
O.P., but - alas - that doesn't stop them from posting here.
in my experience even
people who post arrogant answers like RTFM or fun answers are not even
experts.
I looked through some of your C material at the URL mentioned in your sig
block - <http://guideme.itgo.com/atozofc/> - what you call the "A to Z of
C" Project. I don't think you're in a position to judge who here is an
expert and who is not.
Indian people are very advanced in Internet using,
they have their own computer hardware/software, some super computers have
been built in India,


I guess, you're talking about those elite people who is less than 1%
of total population.


Irrelevant. The comp.lang.c newsgroup doesn't really care about your kit.
They do care, however, about your manners. "Do my homework" articles are
considered ill-mannered, and attract hostile replies like syrup attracts
wasps. But "I'm doing my ISO C homework and I got stuck; here's the
question, and here's my best answer so far, but it doesn't work; could you
help?" articles are considered well-mannered and are treated much more
sympathetically.

<snip>
Well, my intention is not to mess with you or to start another flame
war. My intention was to tell the truth that how such a fun answer
will hurt a humanbeing who lag others purely because of resources.
I don't buy it. The OP was after a free ride.
IOW, you're hunger for a bread; you ask your neighbour. He may tell
you "get it from shop" or "sorry, I don't have it". Instead he tells
you "Yes I have it" and gives you bunch of bullshits; think for a
while, how would you feel....


I guess I would feel hungry, embarrassed at having asked such a stupid
question, and motivated to learn C programming properly and
enthusiastically so that I could get a job and henceforth afford to buy my
own bread.

--
Richard Heathfield : bi****@eton.powernet.co.uk
"Usenet is a strange place." - Dennis M Ritchie, 29 July 1999.
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html
K&R answers, C books, etc: http://users.powernet.co.uk/eton
Nov 13 '05 #37

P: n/a
"Slartibartfast" <sl******@thhgttg.net> wrote in message news:<bk**********@coset.qualcomm.com>...
"John Bode" <jo*******@my-deja.com> wrote in message news:43**************************@posting.google.c om...

<....snip....>
He may be a enthusiastic student or a professor or a programmer. But,
I'm sure the questions are not homework problems.
Even so, the answers to these questions are easily found in any good C
reference manual, for which this newsgroup is not meant to be a
substitute. This person needs to get into the habit of checking a
reference manual *first*, then doing a Web search, and *then* asking a
question here if he or she didn't find the answer he or she was
looking for.


Very true. But we could at least be civil in the way we tell someone his or
her post was inappropriate, couldn't we??


I try. Sometimes I fail. Sometimes being civil just doesn't work.

<....more snip....>
The truth is, hundreds of students *have* posted to this newsgroup
asking us to do their homework for them, or decided asking here was
simpler than looking it up in their handy reference manual. And it's
because of those people who are lazy and irresponsible that we tend to
be short with anyone asking basic questions.


....and it's even shorter not to respond at all.


Which accomplishes what, exactly? Better to confront ignorance up
front and risk some hurt feelings than let that ignorance continue.
I'd rather have you pissed off and thinking for yourself than happy
and spoon fed.
Nov 13 '05 #38

P: n/a
Richard Heathfield <do******@address.co.uk.invalid> wrote in message news:<bk**********@sparta.btinternet.com>...
R. Rajesh Jeba Anbiah wrote:
He may be a enthusiastic student or a professor or a programmer. But,
I'm sure the questions are not homework problems.


They sure look like homework questions to me. What makes you so sure they're
not?


I'm 99.99% sure that this guy's questions are not homework problems.
This guy seems to be more enthusiastic to find the answers for the
questions that he found on some of the Indian based books. I guess, he
is preparing for an interview (his 'c' & 'v' in argc, argv question
sounds so).
in my experience even
people who post arrogant answers like RTFM or fun answers are not even
experts.


I looked through some of your C material at the URL mentioned in your sig
block - <http://guideme.itgo.com/atozofc/> - what you call the "A to Z of
C" Project. I don't think you're in a position to judge who here is an
expert and who is not.


If I understand right, you're personally commenting about my stuff or
you've misunderstood that I'm claiming myself as RJH or you didn't
understand what I said.

<quote>in my experience even people who post arrogant answers like
RTFM or fun answers are not even experts</quote>

This is my experience with NG: once I was too stupid than now and had
more curious questions, I would post the questions. Often I would get
flames and RTFM or RTFFAQ answers. Then, I would reply to that person:
"Well, I have referred the FAQ and I couldn't find any better
solution, that's why I have posted the question"---thinking that
person is expert. But, most of the time, those people would respond
that those guys are even small kids who don't know the answer really.
I think, people prefer to act like an arrogant expert to gain some
sort of appreciation. See, I'm not generalising my opinion.

Well, my intention is not to mess with you or to start another flame
war. My intention was to tell the truth that how such a fun answer
will hurt a humanbeing who lag others purely because of resources.


I don't buy it. The OP was after a free ride.


Sorry I couldn't understand what do you mean here (My first language
is Tamil)
IOW, you're hunger for a bread; you ask your neighbour. He may tell
you "get it from shop" or "sorry, I don't have it". Instead he tells
you "Yes I have it" and gives you bunch of bullshits; think for a
while, how would you feel....


I guess I would feel hungry, embarrassed at having asked such a stupid
question, and motivated to learn C programming properly and
enthusiastically so that I could get a job and henceforth afford to buy my
own bread.


I'm afraid, if you're not affected by "hurts", then obviously you're
not a humanbeing---you must be a god.

---
"Learn from yesterday, live for today, hope for tomorrow. The
important thing is to not stop questioning."--Albert Einstein
http://guideme.itgo.com/atozofc/ - "A to Z of C" Project
Email: rrjanbiah-at-Y!com
Nov 13 '05 #39

P: n/a
R. Rajesh Jeba Anbiah <ng**********@rediffmail.com> scribbled the following:
Richard Heathfield <do******@address.co.uk.invalid> wrote in message news:<bk**********@sparta.btinternet.com>...
I don't buy it. The OP was after a free ride.
Sorry I couldn't understand what do you mean here (My first language
is Tamil)


Translation:

"I do not believe that is true. What the OP wanted was to have his work
done for him so he would not have to bother actually *thinking* about
C code, when he could just pass ready-written answers without
understanding them himself."

--
/-- Joona Palaste (pa*****@cc.helsinki.fi) ---------------------------\
| Kingpriest of "The Flying Lemon Tree" G++ FR FW+ M- #108 D+ ADA N+++|
| http://www.helsinki.fi/~palaste W++ B OP+ |
\----------------------------------------- Finland rules! ------------/
"When a man talks dirty to a woman, that's sexual harassment. When a woman talks
dirty to a man, that's 14.99 per minute + local telephone charges!"
- Ruben Stiller
Nov 13 '05 #40

P: n/a
R. Rajesh Jeba Anbiah wrote:
Richard Heathfield wrote:

....
I don't think you're in a position to judge who here is an
expert and who is not.


If I understand right, you're personally commenting about my stuff or
you've misunderstood that I'm claiming myself as RJH or you didn't
understand what I said.

<quote>in my experience even people who post arrogant answers like
RTFM or fun answers are not even experts</quote>


And Richard said that you are not in the position to decide who is an expert.

Jirka

Nov 13 '05 #41

P: n/a
"John Bode" <jo*******@my-deja.com> wrote in message news:43**************************@posting.google.c om...

<snip>
The truth is, hundreds of students *have* posted to this newsgroup
asking us to do their homework for them, or decided asking here was
simpler than looking it up in their handy reference manual. And it's
because of those people who are lazy and irresponsible that we tend to
be short with anyone asking basic questions.


....and it's even shorter not to respond at all.


Which accomplishes what, exactly? Better to confront ignorance up
front and risk some hurt feelings than let that ignorance continue.
I'd rather have you pissed off and thinking for yourself than happy
and spoon fed.


Believe it or not it achieves exactly the same result as using the flame thrower,
but without pi$$ing people off. You're hardly being spoon fed if you get
no response at all, are you?

And how exactly does flaming "confront" ignorance? It is the Internet equivalent
of a two-year-old's tantrum and serves only to demonstrate your own ignorance.
Result - two ignorant people instead of one.

Most people wouldn't be so abusive to somebody face to face - even
somebody who asks a silly question - so why here? I'm convinced some do it
because the nature of the medium means they can get away with it.

--
#include <stdio.h>
char*f="#include <stdio.h>%cchar*f=%c%s%c;%cint main(void){printf(f,10,34,f,34,10,10);return 0;}%c";
int main(void){printf(f,10,34,f,34,10,10);return 0;}
Nov 13 '05 #42

P: n/a
"R. Rajesh Jeba Anbiah" wrote:
.... snip ...
This is my experience with NG: once I was too stupid than now and had
more curious questions, I would post the questions. Often I would get
flames and RTFM or RTFFAQ answers. Then, I would reply to that person:
"Well, I have referred the FAQ and I couldn't find any better
solution, that's why I have posted the question"---thinking that
person is expert. But, most of the time, those people would respond
that those guys are even small kids who don't know the answer really.
I think, people prefer to act like an arrogant expert to gain some
sort of appreciation. See, I'm not generalising my opinion.


Which is even more reason to lurk for a while, so that you have
at least a chance of differentiating the idiots from the
knowledgeable.

--
Replies should be to the newsgroup
Chuck Falconer, on vacation.
Nov 13 '05 #43

P: n/a
"Jirka Klaue" <jk****@ee.tu-berlin.de> wrote in message news:bk**********@mamenchi.zrz.TU-Berlin.DE...
R. Rajesh Jeba Anbiah wrote:
<quote>in my experience even people who post arrogant answers like
RTFM or fun answers are not even experts</quote>


And Richard said that you are not in the position to decide who is an expert.


But he's not a million miles from the truth.

--
#include <stdio.h>
char*f="#include <stdio.h>%cchar*f=%c%s%c;%cint main(void){printf(f,10,34,f,34,10,10);return 0;}%c";
int main(void){printf(f,10,34,f,34,10,10);return 0;}
Nov 13 '05 #44

P: n/a
"Slartibartfast" <sl******@thhgttg.net> wrote in message news:<bk**********@coset.qualcomm.com>...
"John Bode" <jo*******@my-deja.com> wrote in message news:43**************************@posting.google.c om...

<snip>
> The truth is, hundreds of students *have* posted to this newsgroup
> asking us to do their homework for them, or decided asking here was
> simpler than looking it up in their handy reference manual. And it's
> because of those people who are lazy and irresponsible that we tend to
> be short with anyone asking basic questions.

....and it's even shorter not to respond at all.
Which accomplishes what, exactly? Better to confront ignorance up
front and risk some hurt feelings than let that ignorance continue.
I'd rather have you pissed off and thinking for yourself than happy
and spoon fed.


Believe it or not it achieves exactly the same result as using the flame
thrower, but without pi$$ing people off. You're hardly being spoon fed if you
get no response at all, are you?


No, it just lets that person think his message didn't propagate
properly and he'll post it *again*.
And how exactly does flaming "confront" ignorance?


It lets you *know* you've made a mistake, instead of wondering why
nobody's responding.

[snip]

Look, I've been on the receiving end of abuse here and in other
newsgroups and online forums, and in the grand scheme of things it
doesn't mean dick. People are going to flame. Let 'em flame and move
on. There's no point in getting your feelings hurt in an online
forum. Nor is there any point in being a net nanny.
Nov 13 '05 #45

P: n/a
In article <ab**************************@posting.google.com >,
ng**********@rediffmail.com says...
I looked through some of your C material at the URL mentioned in your sig
block - <http://guideme.itgo.com/atozofc/> - what you call the "A to Z of
C" Project. I don't think you're in a position to judge who here is an
expert and who is not.


If I understand right, you're personally commenting about my stuff or
you've misunderstood that I'm claiming myself as RJH or you didn't
understand what I said.


I won't put words in his mouth, but after looking over the content at the
above link, I find it hard to believe that DMR was actually involved,
except perhaps very peripherally with the text of the "book". Chapter 2
(Birth of C) is about the only portion that seems remotely likely.

It is filled with mistakes, errors, omissions, outright fallacies and
it's too painful to read it all the way through. I'm sorry, because I
like what you are trying to do (help C programmers improve), but the
information in the document is simply going to cause more harm than
good. Out of work developers in western countries should probably
hope that as many Indian C programmers as possible read this document,
but that is faint praise indeed. The book was written between 2000 and
2001 according to the website, yet refers to ANSI C (without specifics)
rather than ISO C, C99, etc. Not that it seems to matter.

Chapter 3: Is there any data to support that Indian Hill is used
by "most of the real programmers"? What happened to K&R, BSD,
GNU, etc.? I don't think Hungarian NOTATION is a coding style
at all per se, but rather a (poor) variable naming convention. The
reference to VB is perhaps true, but by no means relevant. The "WAR"
coding style is, well, best left ignored.

Chapter 4: Seems to assume (including references to hotkeys for
help in the GUI) to Turbo C++ 3.0. The "Myths" section is certainly
aptly named, both in questions and in the responses. It's completely
stunning that you can write any of the content in section 4.1 with
a straight face. The rest of the "chapter" doesn't get much better.

Chapter 5: Despite being only one page in length, it has errors. Hint:
What does the standard say that EXIT_FAILURE is equal to?. There are
technical arguments to be made about 5.2 as well, but....

Chapter 6: Oh boy. Your attempts to define undefined behavior are
pretty scary. A look at the standards documents might also be
terrifying in this regard, but at least you can't claim they aren't
the letter of the law, so to speak. 6.1 What Dennis Ritchie did or
did not say about program fragments is not the method of determining
undefined behavior. Section 6.2 makes no attempt to even explain WHY
any of the examples might or might not invoke undefined behavior, it
simply claims they are "idiotic questions ... often asked in Indian
Programming [sic] world". That's all you have to say on this topic?
I'm not sure how a book consists of multiple one page "chapters",
but ...

Chapter 7: "The Magic XOR". Using XOR for SWAP actually itself
invokes undefined behavior, yet you show call it out as an example of
the "magic" of XOR rather than including it in the above "chapter.
See CLC FAQ 10.3 for more info on why. While I'm thinking about it,
replacing the entire text with a pointer to
http://www.eskimo.com/~scs/C-faq/top.html
would be a huge improvement. 7.3 actually tells the reader that the
use of
ch ^ 'a'
is a valid encryption technique, with one of the added benefits
of "Since such technique does not have any 'key' values, it is
easy to decrypt the file". How joyous. The mind boggles further.
A big flashing "DANGER: THIS IS NOT ENCRYPTION" should be nearby.

Chapter 8: "String Function" [sic]. This is simply another one
page chapter with the author's pet implementations of strlen,
strcpy, strcat and strcmp. Apparently, understanding these will
help improve your programming skills. I suppose that all depends
upon where you fall on the totem pole.

This is getting long, so I'll skip around, section 12.3 provides
a *claimed* cure for memory leaks. It turns out that "The remedy
for memory leak is to declare pointer constant". It has to be read
to be fully appreciated.

Chapter 13 is dedicated to the concept of Code Obfuscation in which
we find out that "Throughout the world most of the C programmers
participate in this contest". The fact that no Indian has yet won
the prize is called out for a reason to explore the topic. *Sigh*

Almost none of chaptes 14-79 have anything to do with modern
programming, or ANSI or ISO C at all, so I won't bother. Most
of it would be far better replaced with an old copy of Ray
Duncan's "Advanced MSDOS Programming" from 18 years ago.

If you really want to help Indian programmers, point them at
some content written about things relevant in this century,
and more importantly written accurately. As previously stated,
the CLC FAQ (FREE in online form, but the book is nice to
have handy as well) and a copy of K&R2 would be orders of
magnitude better than this "book".

--
Randy Howard _o
2reply remove FOOBAR \<,
______________________()/ ()______________________________________________
SCO Spam-magnet: po********@sco.com
Nov 13 '05 #46

P: n/a
"Slartibartfast" <sl******@thhgttg.net> wrote in message news:<bk**********@coset.qualcomm.com>...
"John Bode" <jo*******@my-deja.com> wrote in message news:43**************************@posting.google.c om...

<snipped pros/cons of flaming>
Most people wouldn't be so abusive to somebody face to face - even
somebody who asks a silly question
I would *definately*(sp?) give someone silly answers to homework
assignments in person. I have done this before. I will do it again.
- so why here? I'm convinced some do it
because the nature of the medium means they can get away with it.


it also means that students believe that *they* can get away with
it. that sword works both ways ...

goose,
and the answer is ... ... ... 42!!!
(btw, nice job in norway :-)
Nov 13 '05 #47

P: n/a
"John Bode" <jo*******@my-deja.com> wrote in message news:43**************************@posting.google.c om...
And how exactly does flaming "confront" ignorance?
It lets you *know* you've made a mistake, instead of wondering why
nobody's responding.


You don't have to set fire to someone's hair to achieve that.
Look, I've been on the receiving end of abuse here and in other
newsgroups and online forums, and in the grand scheme of things it
doesn't mean dick.


In the grand scheme of things we'll all be dead soon anyway, so nothing means "dick".
So it's OK for me to abuse anybody in any way I like, is it? That's the logical conclusion
of your line of reasoning, and it doesn't work.

Maybe in face to face conversations you *do* advocate a punch in the mouth for anyone
who says anything you don't like or agree with.

--
#include <stdio.h>
char*f="#include <stdio.h>%cchar*f=%c%s%c;%cint main(void){printf(f,10,34,f,34,10,10);return 0;}%c";
int main(void){printf(f,10,34,f,34,10,10);return 0;}
Nov 13 '05 #48

P: n/a
"goose" <ru**@webmail.co.za> wrote in message news:ff**************************@posting.google.c om...
"Slartibartfast" <sl******@thhgttg.net> wrote in message news:<bk**********@coset.qualcomm.com>... I would *definitely* give someone silly answers to homework
assignments in person. I have done this before. I will do it again.
There's a world of difference between silly answers and abuse, though.
goose,
and the answer is ... ... ... 42!!!
(btw, nice job in norway :-)


....lovely crinkly edges.

--
#include <stdio.h>
char*f="#include <stdio.h>%cchar*f=%c%s%c;%cint main(void){printf(f,10,34,f,34,10,10);return 0;}%c";
int main(void){printf(f,10,34,f,34,10,10);return 0;}
Nov 13 '05 #49

P: n/a
Randy Howard <ra**********@foomegapathdslbar.net> scribbled the following:
In article <ab**************************@posting.google.com >,
ng**********@rediffmail.com says...
> I looked through some of your C material at the URL mentioned in your sig
> block - <http://guideme.itgo.com/atozofc/> - what you call the "A to Z of
> C" Project. I don't think you're in a position to judge who here is an
> expert and who is not.
If I understand right, you're personally commenting about my stuff or
you've misunderstood that I'm claiming myself as RJH or you didn't
understand what I said.

I won't put words in his mouth, but after looking over the content at the
above link, I find it hard to believe that DMR was actually involved,
except perhaps very peripherally with the text of the "book". Chapter 2
(Birth of C) is about the only portion that seems remotely likely.
They say they thank him for the use of his picture. Perhaps that's his
sole contribution.
It is filled with mistakes, errors, omissions, outright fallacies and
it's too painful to read it all the way through. I'm sorry, because I
like what you are trying to do (help C programmers improve), but the
information in the document is simply going to cause more harm than
good. Out of work developers in western countries should probably
hope that as many Indian C programmers as possible read this document,
but that is faint praise indeed. The book was written between 2000 and
2001 according to the website, yet refers to ANSI C (without specifics)
rather than ISO C, C99, etc. Not that it seems to matter.


My particular favourite was:

Q: I am working in UNIX. Does that mean I am working within ANSI C?
A: Yes.

ROTFLMAO. So things like getpid(), getgid(), open(), close(),
socket(), bind(), accept() etc. are ANSI standard C these days?

(snip further criticism)

This book also claims to be for learners, and to concentrate on ANSI C.
But then, right after Chapter I, it goes *very* deep into MS-DOS land
(the inner workings of MS-DOS, no less, not its C API) and assumes that
the whole world is Turbo C++ 3.0 (which IMO also is obsolete these
days). If (as the authors say) "C programming means ANSI C", why is
over two-thirds of the book MS-DOS-specific?

In closing, this is a book I would not recommend to anyone. You're
better off with K&R2.

--
/-- Joona Palaste (pa*****@cc.helsinki.fi) ---------------------------\
| Kingpriest of "The Flying Lemon Tree" G++ FR FW+ M- #108 D+ ADA N+++|
| http://www.helsinki.fi/~palaste W++ B OP+ |
\----------------------------------------- Finland rules! ------------/
"C++. C++ run. Run, ++, run."
- JIPsoft
Nov 13 '05 #50

62 Replies

This discussion thread is closed

Replies have been disabled for this discussion.