若有定义∶# define P(x) x * x *x+1和说明语句:int a=2;则表达式P(2)的值是( )具体说说程序正义运行,

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/03 13:04:06
若有定义∶# define P(x) x * x *x+1和说明语句:int a=2;则表达式P(2)的值是( )具体说说程序正义运行,

若有定义∶# define P(x) x * x *x+1和说明语句:int a=2;则表达式P(2)的值是( )具体说说程序正义运行,
若有定义∶# define P(x) x * x *x+1和说明语句:int a=2;则表达式P(2)的值是( )
具体说说程序正义运行,

若有定义∶# define P(x) x * x *x+1和说明语句:int a=2;则表达式P(2)的值是( )具体说说程序正义运行,
#include
//#define P(x) x*x*x+1
#define P(x) ((x) * (x) *(x)+1)
int main()
{
int a=2;
printf("%d\n",P(2));///P(x) x * x *x+1 就是将x替换成2 所以 p(2) = 2*2*2+1 =9,你要是想计算x的立方加1的话就加上括号:
 ///P(x) ((x) * (x) *(x)+1) 这样,即使是x是一个表达式也不会出错;
///输出P(2+3)
printf("%d\n",P(2+3)); //要是不是P(x) ((x) * (x) *(x)+1) 这样 他的果是18 P(2+3) = 2+3*2+3*2+3+1 =18;P(x) ((x) * (x) *(x)+1)他的话就是126;因为x只是一个符号,宏定义就是一个简单的字符替换
return 0;
}