We took a quick look at output in the previous lab; we'll expound on that just a bit.
Output in C++ is done with the
cout object. This is the name
of the output screen or window. To actually send something to the
screen, C++ gives us the
<< operator. In general, an output
statement looks like this:
Value2<< ... <<
ValueI is replaced with objects. Note that
<< operators separate each of the values.
As mentioned in the introduction to the lab, output statements are actually output expressions. However, we need the semicolon to make it a statement which is what the compiler demands.
You may have noticed a strange object in the output statements of our
endl. In your output, you should notice that
endl stops the current line of output and starts the next
output on the next line. This suggests that
"\n". But just how interchangeable?
Add this line of code in your program:
cout << "Line #1." << "\n" << "Line #2" << "\n";Don't both removing anything from your program since you'll need it later. Recompile and run your program.
Question #3.1.1: What does this statement print? Be very precise with the line breaks.
"\n" with an
endl. Recompile and run
Question #3.1.2: How has the output changed?
endl is a variable for an object, apparently some type of
string object with a newline character in it. (It might have
other characters we can't see.) As we know, variables do not
magically appear in C++. Like
endl comes from the
But that's a bit strange, right? Why not use
"\n" all of
the time? We could make the output expression from above much
cout << "Line #1.\nLine #2\n";So why bother with
endlis more than just the newline character; it also indicates that you want the output to appear on the screen right now. Usually, for these labs, you won't find this to be a big deal. It may never matter to you (depending on your program, compiler, and operating system). Play it safe and use
endlat the end of a prompt, but otherwise it doesn't really matter if you use
We can nearly output anything. Our program currently prints strings, integer objects, and even the result of an expression. We can also print complex objects:
cout << cin << endl;Add this line to your program, recompile, and execute the program.
Question #3.1.3: What does this line print?
Printing the value of
cin isn't really useful; the point is
that we can print it. For some objects we'll see later on,
this can be very useful, especially in debugging our code.