14-define 定义常量和宏

14-define 定义常量和宏

define 是一个预处理指令。它有两种用法

1、define 定义符号

#define _CRT_SECURE_NO_WARNINGS 1

#include <stdio.h>

/* define 定义符号 */
#define MAX		1000

int main()
{
	printf("MAX = %d\n", MAX);
	
	return 0;
}

image-20241206103336615

2、define 定义宏

#define _CRT_SECURE_NO_WARNINGS 1

#include <stdio.h>

/* define 定义宏 */
#define ADD(X, Y)		X + Y

int main()
{
	printf("ADD(2, 3) = %d\n", ADD(2, 3));
	
	return 0;
}

image-20241206105105020

(1)问题

#define _CRT_SECURE_NO_WARNINGS 1

#include <stdio.h>

/* define 定义宏 */
#define ADD(X, Y)		X + Y

int main()
{
	printf("4 * ADD(2, 3) = %d\n", 4 * ADD(2, 3));	//本应是 20,结果却是 4 * 2 + 3 = 11
	
	return 0;
}

image-20241206105454437

(2)问题的解决

#define _CRT_SECURE_NO_WARNINGS 1

#include <stdio.h>

/* define 定义宏 */
#define ADD(X, Y)		(X + Y)

int main()
{
	printf("4 * ADD(2, 3) = %d\n", 4 * ADD(2, 3));	// 4 * (2 + 3) = 20
	
	return 0;
}

image-20241206105731990

posted @ 2024-12-06 11:01  AK47YHAO  阅读(71)  评论(0)    收藏  举报