Функция swap(t, x, y) в виде макроса - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Реализуйте функцию swap(t, x, y) в виде макроса, который осуществляет обмен значениями указанного типа.

Решение задачи: «Функция swap(t, x, y) в виде макроса»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
 
#define swap(t,x,y)\
    ({t temp = x;\
    x = y;\
    y = temp;})
 
int main()
{
    int a = 0,b = 1;
    swap(int,a,b);
    printf("a = %d , b = %d\n",a,b);
    float a1 = 0.5F,b1 = 1.25F;
    swap(float,a1,b1);
    printf("a1 = %f , b1 = %f\n",a1,b1);
    return 0;
}

Оцени полезность:

5   голосов , оценка 3.4 из 5
Похожие ответы