C语言进阶学习笔记 (二)预处理

本文详细介绍了C/C++编程中的预处理、文件包含、宏定义、条件编译和#pragma指令的使用,包括常见错误和实用案例。深入探讨了#pragma once、headerstop、pack指令及其在项目中的实际应用。
摘要由CSDN通过智能技术生成

第二章:预处理

2.1文件包含

#include"my.h" 先当前目录后系统目录
#include<my.h> 先系统目录后当前目录

2.2宏定义

约定俗成都是大写
宏定义仅仅是简单宏替换,涉及到运算内容用括号()括起来。

2.3常见错误

带参数的宏和不带参数的宏,都要注意添加括号

2.4条件编译

#if xx
{}
#else
{}
#endif

#ifdef xxx
#endif

#ifndef xxx
#endif

#if defined (xxx) || defined (xxx)
#endif

2.5 #pragma

#pragma data // data为参数

2.5.1 常见参数

#pragma message(“消息”) 可以再编译的时候,通过message打印出相应的信息

#include<stdio.h> 

#define STR 
void main(int argc,char*argv) 
{ 
	printf(" 学习 #pragma 命令中 message 参数的使用 !\n");
	#ifdef STR 
		 #pragma message("STR 已经定义过了 ") 
	#endif
	return;
}

#pragma once 用在头文件开始,保证头文件只编译一次

#pragma hdrstop 编译头文件到此为止,后面无需再编译了

#pragma pack() 修改字节对齐方式,默认4个字节

案列:#pragma pack(2)设置2个字节对齐
#pragma pack(push) 保存当前默认的字节对齐方式
#pragma pack(pop)恢复默认的字节对齐方式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值