Problème de sortie d'extension de macro C++ ?
淡淡烟草味
淡淡烟草味 2017-05-16 13:30:56
0
1
817
#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;
}

Le programme est comme ci-dessus et le résultat est normal dans les circonstances ci-dessus, mais après de légères modifications, les problèmes suivants surviennent.

  1. Le programme signale une erreur lors de l'ajout de <<endl. Démarrer un autre cout<<endl peut produire normalement.

  2. J'ai essayé d'ajouter des parenthèses à <<endl, mais j'ai toujours une erreur.

  3. J'ai essayé d'utiliser printf pour générer une sortie, mais j'ai découvert qu'il ne pouvait pas être généré sans ajouter n.

  4. Tout fonctionne bien lors de l'utilisation de constantes const

Je suis un peu confus. La macro n'est-elle pas directement remplacée ? Pourquoi y a-t-il un problème ?

淡淡烟草味
淡淡烟草味

répondre à tous(1)
为情所困
#define pi 3.1415926;

Il y a un point-virgule supplémentaire

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal