C++巨集展開的輸出問題?
淡淡烟草味
淡淡烟草味 2017-05-16 13:30:56
0
1
810
#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;
}

程式如上,上述情況下正常輸出,但稍作修改後出現下列問題。

  1. 加入<<endl時程式報錯。另起一個cout<<endl可以正常輸出。

  2. 試圖在<<endl加括號,還是報錯。

  3. 試著用printf輸出,發現不加n時都輸出不了。

  4. 換用const常數時一切正常

有點搞不懂宏不是直接替換嗎,為什麼會出問題?

淡淡烟草味
淡淡烟草味

全部回覆(1)
为情所困
#define pi 3.1415926;

多了個;分號

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板