Message-ID: <387E3AF9.9E1CCE61@earthlink.net> From: Martin Ambuhl X-Mailer: Mozilla 4.7 [en] (Win95; U) X-Accept-Language: en MIME-Version: 1.0 Newsgroups: comp.os.msdos.djgpp Subject: Re: variable declaration in for-header fails?? References: <387d91d5 DOT 333064 AT news DOT netcologne DOT de> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 65 NNTP-Posting-Host: 209.246.84.11 X-Complaints-To: abuse AT earthlink DOT net X-Trace: newsread2.prod.itd.earthlink.net 947796736 209.246.84.11 (Thu, 13 Jan 2000 12:52:16 PST) NNTP-Posting-Date: Thu, 13 Jan 2000 12:52:16 PST Organization: EarthLink Network, Inc. X-ELN-Date: Thu Jan 13 12:52:16 2000 Date: Thu, 13 Jan 2000 20:52:16 GMT To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Peter Karp wrote: > > Hi :-) > > I have a little question, why DJGPP can't compile a program where I've > defined a counter in the for loop (which is better, as the counter is > "more local" then, right?). > but fails, when I define the counter inside the loop declaration: You have misunderstoop the comma in "int i = 1, cout << x, x++" as a comma operator instead of a separator or declarations. Consider this code #include using namespace std; int main() { for (int x = 1, y = 2; x <= 100; x++, y++) cout << "(" << x << "," << y << ") "; cout << endl; return 0; } Notice that this declares two variables, x and y. Your code tries to declare x and cout. Any statement in the initialization must be otherwise a legal statement (as well as not compound). Obviously, int x = 1, cout << x; is not a legal C++ statement, so cannot appear as an initializer statement. > > #include > using namespace std; > > int main() > { > for(int x=1, cout << x , x++ ;x<=100; x++) > cout << ", " << x; > > cout << endl; > > return(0); > } > > BTW, Borland C++ 3.1 compiles this version without an error, while > DJGPP gives the following error message: The BC++ is itself in error. -- Martin Ambuhl mambuhl AT earthlink DOT net What one knows is, in youth, of little moment; they know enough who know how to learn. - Henry Adams A thick skin is a gift from God. - Konrad Adenauer __________________________________________________________ Fight spam now! Get your free anti-spam service: http://www.brightmail.com