- 论坛徽章:
- 0
|
今日在看《C++ Primer 3rd Edition》第一篇,遇到一个问题
我以为应该先输出条件编译里的cout,结果却是先输出Hello World!
百思不得其解,难道预编译有什么规定?
源码如下:
#include "stdafx.h"
#include <iostream.h>
#define DEBUG
void read() { cout << "read()\n"; }
void sort() { cout << "sort()\n"; }
void compact() { cout << "compact()\n"; }
void write() { cout << "write()\n"; }
int main(int argc, char* argv[])
{
#ifdef DEBUG
cout << "Beginning execution of main()\n";
#endif
printf("Hello World!\n");
int iterations = 0;
bool continue_loop = true;
while ( continue_loop != false )
{
iterations++;
cout << "the while loop has executed "
<< iterations << " times\n";
if ( iterations == 5 )
continue_loop = false;
}
read();
sort();
compact();
write();
return 0;
} |
|