早教吧作业答案频道 -->其他-->
宏常量定义与函数问题#include<stdio.h>#definePI3.14/*********Found************/#defineS(bj)PI*(bj)*(bj)intmain(void){/*********Found************/floatmianJi;mianJi=S(2+3);printf("mianji=%5.2f\n",mianJi);return0;}
题目详情
宏常量定义与函数问题#include<stdio.h> #define PI 3.14 /*********Found************/ #define S(bj) PI*(bj)*(bj) int main(void) { /*********Found************/ float mianJi; mianJi = S(2+3); printf("mian ji=%5.2f\n", mianJi); return 0;} 请问#define S(bj) PI*(bj)*(bj)是什么意思,为什么改成#define S(bj) PI*bj*bj答案就不对了
▼优质解答
答案和解析
带参宏定义 c语言允许宏带有参数。在宏定义中的参数称为形式参数,在宏调用中的参数称为实际参数。对带参数的宏,在调用中,不仅要宏展开,而且要用实参去代换形参。 带参宏定义的一般形式为: #define 宏名(形参表) 字符串 在字符串中含有各个形参。 带参宏调用的一般形式为: 宏名(形参表) 例如: #define M(y) ((y)*(y)+3*(y)) /*宏定义*/ k=M(5); /*宏调用*/ 在宏调用时,用实参5去代替形参y,经预处理宏展开后的语句为: k=5*5+3*5 -------------------- #define S(bj) PI*(bj)*(bj) 中 3个bj都是参数,在运行是会有数据代替。电脑会认为是 PiX5X5. #define S(bj) PI*bj*bj 中后2个bj没有括号所以只是字符而已,运行时会报错.因为电脑不认识PI*bj*bj这字符串代表什么。
看了 宏常量定义与函数问题#inc...的网友还看了以下:
下表是几种弱电解质的电离平衡常数、难溶电解质的溶度积Ksp(25℃).电解质平衡方程式平衡常数KK 2020-05-13 …
下表是几种弱电解质的电离平衡常数、难溶电解质的溶度积Ksp(25℃).电解质平衡方程式平衡常数KK 2020-05-13 …
下表是几种弱电解质的电离平衡常数(25℃).电解质平衡方程式平衡常数KCH3COOHCH3COOH 2020-05-14 …
表是几种常见弱酸的电离平衡常数(25℃).酸电离方程式电离平衡常数KCH3COOHCH3COOH⇌ 2020-05-14 …
请问氢键是怎么判断的?是不是一定要H-F,H-N和H-O才算是氢键.如果C-F这个不是真的键,是2 2020-05-21 …
问1求数257经过257次的“H运算”得到的结果?问2若“H运算”②的结果总是常数a,求a的值?规 2020-06-12 …
量子问题求H={(Lx*Lx+Lz*Lz)/2I}+(Ly*Ly)/2J的本证能级.其中I,J为转 2020-07-09 …
初二数学选择题在三角形ABC中,它底边为A,底边上的高为H,则三角形的面积S=1/2AH.若H为定 2020-07-31 …
一个圆锥,高是h,底圆半径是a,问这个圆锥内切正方体的最大体积是多少?(算出来的体积是一个常数乘以 2020-07-31 …
请问记号“h.c.”在物理表达式中的含义是什么?(参见图片:这是一个标准模型中的希格斯-汤川作用.如 2020-12-08 …