recherche

Maison  >  Questions et réponses  >  le corps du texte

Problème de sortie d’extension de macro C++ ?

#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 ?

淡淡烟草味淡淡烟草味2779 Il y a quelques jours803

répondre à tous(1)je répondrai

  • 为情所困

    为情所困2017-05-16 13:32:56

    #define pi 3.1415926;

    Il y a un point-virgule supplémentaire

    répondre
    0
  • Annulerrépondre