Microsoft KB Archive/104672: Difference between revisions
m (Text replacement - """ to """) |
m (Text replacement - ">" to ">") |
||
(One intermediate revision by the same user not shown) | |||
Line 81: | Line 81: | ||
error C2065: 'cout' : undeclared identifier<br /> | error C2065: 'cout' : undeclared identifier<br /> | ||
error C2297: ' | error C2297: '<<' : illegal, right operand has type 'char [12]' | ||
</div> | </div> | ||
Line 103: | Line 103: | ||
*/ | */ | ||
#include | #include <iostream.h> | ||
void main (void) | void main (void) | ||
{ | { | ||
cout | cout << "Hello World"; | ||
} | } | ||
</pre> | </pre> |
Latest revision as of 17:43, 20 July 2020
Article ID: 104672
Article Last Modified on 4/24/2006
APPLIES TO
- Microsoft Visual C++ 1.0 Professional Edition
- Microsoft Visual C++ 1.5 Professional Edition
- Microsoft Visual C++ 1.51
- Microsoft Visual C++ 1.52 Professional Edition
- Microsoft Visual C++ 1.0 Professional Edition
- Microsoft Visual C++ 2.0 Professional Edition
- Microsoft Visual C++ 2.1
- Microsoft Visual C++ 4.0 Standard Edition
- Microsoft Visual C++ 6.0 Service Pack 5
- Microsoft Visual C++ 5.0 Standard Edition
This article was previously published under Q104672
SUMMARY
The following error is typically the first of many returned by the Microsoft C/C++ Compiler when attempting to compile a file that includes a C++ header file such as IOSTREAM.H in a C program:
In more recent versions of the compiler, the system header files use #ifdef __cplusplus to prevent the contents from being parsed when compiled as "C" code.
There may also be multiple C2065, C2297, C2054, C2085, C2143, and C2144 errors, and eventually a C1003 error indicating that the error count reached 100.
MORE INFORMATION
The C/C++ compiler invokes either the C compiler or the C++ compiler according to the file's extension. If it ends in .C, the C compiler is invoked; if it ends in .CPP or .CXX, the C++ compiler is invoked.
To invoke the C++ compiler on a file that ends in .C or some other extension, use the /Tp switch to explicitly specify a C++ source file.
The sample code below produces the errors
if compiled with:
cl hello.c
The code compiles fine if compiled with:
cl hello.cpp
-or-
cl /Tp hello.c
Sample Code
/* Compile options needed: None */ #include <iostream.h> void main (void) { cout << "Hello World"; }
Additional query words: 8.00 8.00c 9.00 9.10
Keywords: kbhowto kbinfo kbprogramming kbcpponly kbcompiler KB104672