栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言:预处理指令

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言:预处理指令

文件包含指令:#include

#include<>:引入c语言标准库头文件
#include"":引入自定义头文件

宏定义
  1. 无参数的宏定义(宏常量)

1.可以使用undef卸载宏
2.不重视作用域,可以定义在任意位置,包括函数体内,作用范围从定义位置开始到源文件结尾处
3.宏常量没有数据类型

#define _CRT_SECURE_NO_WARNINGS
#include 
#include 
#include 

void test0101() {
	#define MAX 1024
	//#undef MAX
}

int main(void)
{
	printf("MAX=%dn", MAX);
	return 0;
}

  1. 带参数的宏定义(宏函数)

1.将短小、频繁使用的函数写成宏函数
2.加括号保证运算完整性
3.以空间换时间

  1. 条件编译
    ifdef/ifndef/endif
#ifndef DUBUG
#define DEBUG
#endif
//------------------------
#ifdef DEBUG
void func() {
	printf("Debug版本");
}
#else
void func() {
	printf("非Debug版本");
}
#endif
//------------------------
#if 1
void func() {
	printf("111");
}
#else
void func() {
	printf("000");
}
#endif
  1. 特殊的预定义宏
#define _CRT_SECURE_NO_WARNINGS
#include 
#include 
#include 

//__FILE__ 宏所在文件的源文件名
//__LINE__ 宏所在行的行号
//__DATE__ 代码编译日期
//__TIME__ 代码编译时间

void doWork(char* p) {
	if (p == NULL){
		printf("文件:%s第%d行出错了n", __FILE__, __LINE__);
		printf("日期:%sn", __DATE__);
		printf("时间:%sn", __TIME__);
		return;
	}
}

int main(void)
{
	//printf("MAX=%dn", MAX);
	doWork(NULL);
	return 0;
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/968382.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号