Basic C++程序中的常量

use*_*123 0 c++

在这个基本的C++程序中,为什么不能打印出常量Pi?

#include <iostream>
using namespace std;
#define Pi 3.1415;

int main() {
cout << Pi << endl;
return 0;
} //main
Run Code Online (Sandbox Code Playgroud)

swa*_*log 5

你的Pi定义包含一个分号,;.

替换后,编译后的代码是

cout <<  3.1415; << endl;
Run Code Online (Sandbox Code Playgroud)

什么时候应该

cout <<  3.1415 << endl;
Run Code Online (Sandbox Code Playgroud)

换句话说,做

#define Pi 3.1415
Run Code Online (Sandbox Code Playgroud)

没有半结肠.


虽然,更好的是不要#define用于这样的事情.

请参阅示例如何在C++中使用PI常量作为建议.