C++程序来演示宏的功能

假设我们有一个包含多个整数值的整数数组。我们必须找出数组中最小值和最大值之间的差异。为了解决这个问题,我们必须使用宏。输入取自 stdin,结果打印回 stdout。

所以,如果输入像 array = {120, 589, 324, 221, 234},那么输出将是 答案是:469

最大值 589 和最小值 120 之间的差值为 469。

示例

让我们看看以下实现以获得更好的理解 -

#define minmac(a, b) a = min(a, b)

#define maxmac(a, b) a = max(a, b)

#define INF ((1 << 31)-2)

#define input(a) cin >> a

#define toStr(a) string("答案是 :")

#define FOO(a, b)

#define foreach(a, b) for (int i = 0; i < a.size(); ++i)

#include <iostream>

#include <vector>

using namespace std;

FOO(minmac, <)

FOO(maxmac, >)

int main(){

   int n; cin >> n;

   vector<int> v(n);

   foreach(v, i) {

      input(v)[i];

   }

   int mini = INF;

   int maxi = -INF;

   foreach(v, i) {

      minmac(mini, v[i]);

      maxmac(maxi, v[i]);

   }

   int ans = maxi - mini;

   cout << toStr(答案是 :) <<' '<< ans;

   return 0;

}

输入

5

120 589 324 221 234

输出结果
答案是 : 469

以上是 C++程序来演示宏的功能 的全部内容, 来源链接: utcz.com/z/317230.html

回到顶部