▃ ▅ ησ ♥ яєѕρєcт ▅ ▃
Süper Üye
Makro Fonksiyon Tanımlaması
#define delta(a,b,c) ((b)*(b)-4*(a)(c))
#define yaz() puts("Devam etmek için bir tuşa basın...")
01:
02:
03:
04:
05:
06:
07:
08:
09:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
/* 08prg06.c: makro fonksiyon uygulaması */
#include <stdio.h>
#define buyuk(a,b) ( (a>b) ? a:b)
int main()
{
int x,y,eb;
printf("iki sayı girin: ");
scanf("%d,%d",&x,&y);
eb = buyuk(x,y);
printf("buyuk olan %d\n",eb);
return 0;
}
ÇIKTI
iki sayı girin: 8,6
buyuk olan 8
Başlık dosyalarında, bol miktarda makro fonksiyon uygulamalarına rastlanır. Makro tanımlaması #define önişlemci komutu kullanılarak yapılır. Örneğin aşağıdaki makro fonksiyonlar geçerlidir.
#define kare(x) (x)*(x)#define delta(a,b,c) ((b)*(b)-4*(a)(c))
#define yaz() puts("Devam etmek için bir tuşa basın...")
Bu şekilde tanımlanan fonksiyonların kullanımı diğerleri gibidir. Yalnızca programın başında tanımlanır. Ancak, bu tanımlamalarla fonksiyon bellekte bir yer işgal etmez. Makro fonksiyon tanımlamaları
Bağlantıları görmek için lütfen
Giriş Yap
'de tekrar ele alınacaktır.Basit bir makro fonksiyon uygulaması Program 8.6'da gösterilmiştir. buyuk(a,b) makrosu a>b ise a değerini aksi halde b değerini gönderir.
Bağlantıları görmek için lütfen
Giriş Yap
Makro fonksiyon uygulaması01:
02:
03:
04:
05:
06:
07:
08:
09:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
/* 08prg06.c: makro fonksiyon uygulaması */
#include <stdio.h>
#define buyuk(a,b) ( (a>b) ? a:b)
int main()
{
int x,y,eb;
printf("iki sayı girin: ");
scanf("%d,%d",&x,&y);
eb = buyuk(x,y);
printf("buyuk olan %d\n",eb);
return 0;
}
ÇIKTI
iki sayı girin: 8,6
buyuk olan 8