C言語マクロサンプル

C言語

xMacro1.c

/*
	xMacro1.c マクロの基本
*/
#include <stdio.h>
#define MAX 5				/* MAXを5と置き換える                       */
					/* 置き換えるタイミングはコンパイルするとき */
int main(void)
{
	int i;
	
	for (i=0; i<MAX;i++){		/* for(i=0; i<5; i++){ と同じ意味になる */
		printf("%d\n", i);
	}

	return 0;
}

実行結果

0
1
2
3
4

xMacro2.c

/*
	xMacro2.c マクロの応用
*/
#include <stdio.h>
#define JIJO(x)	(x) * (x)			/* JIJO(x)を (x) * (x)と置き換える         */

int main(void)
{
	int n;
	
	printf("5の2乗は%dです\n\n", JIJO(5));		/* xに5が入る */

	printf("整数を入力して下さい: ");
	scanf("%d", &n);
	
	printf("%dの2乗は%dです\n", n, JIJO(n));	/* xに変数nの内容が入る */

	return 0;
}

実行結果

5の2乗は25です

整数を入力して下さい: 12 [Enter]
12の2乗は144です

コメント