问题描述
#include <stdio.h>#include <cmath>#include <iostream>using namespace std;#define pi 3.1415926;//const double pi=3.1415926;int main(){// printf('%f',(atan2(-1,1)*180/pi)); cout<< atan2(-1,1)*180/pi;// <<endl;}
程序如上,上述情况下正常输出,但稍作修改后出现如下问题。
加入<<endl时程序报错。另起一个cout<<endl可以正常输出。
试图在<<endl加括号,还是报错。
试图用printf输出,发现不加n时都输出不了。
换用const常量时一切正常
有点弄不明白宏不是直接替换吗,为什么会出问题?
问题解答
回答1:#define pi 3.1415926;
多了个;分号