Problem 1: When executing a program from the IDE, the console window blinks and then closes immediately.
Answer 1: Some compilers (eg. Bloodshed’s Dev C++) don’t automatically pause the console screen after the program has finished executing. If this is the case with your compiler, the following two steps will fix your problem:
First, add the following line near the top of your program:
1 | #include <iostream> |
1 | cin.clear(); |
2 | cin.ignore(255, '\n' ); |
3 | cin.get(); |
Other solutions, such as the commonly suggested system(“pause”) solution may only work on certain operating systems.
Problem 2: When compiling with Microsoft Visual C++, you get the following error: “c:\vcprojects\test.cpp(263) :fatal error C1010: unexpected end of file while looking for precompiled header directive”
Answer 2: This error occurs when the Microsoft Visual C++ compiler is set to use precompiled headers but one of your C++ code files does not include the stdafx header as the first line. To fix this problem, simply locate the file producing the error (in the above error, test.cpp is the culprit), and add the following line at the very top of the file:
1 | #include "stdafx.h" |
Problem 3: When trying to use cin or cout, the compiler says cin or cout is an “undeclared identifier”
Answer 3: First, make sure you have included the following line near the top of your file:
1 | #include <iostream> |
1 | using namespace std; |
Make sure you do not mistake the letter l (lower case L) in endl for the number 1. endl is all letters. I recommend using a font that makes it clear the differences between the letter lower case L, upper case i, and the number 1. Also the letter capital o and the number zero can easily be confused in many fonts. There is a huge list of programming fonts here.
Problem 4: My program compiles but it isn’t working correctly. What do I do?
Answer 4: Debug it! You can find information on how to debug programs in appendix A, specifically sections A.4 and A.5. You will probably find the debugging sections more comprehensible after reading a few more chapters, but I wanted to make you aware of their existence now for future reference.
No comments:
Post a Comment