C语言 单片机 预编译的下面四句汔求详细口语解释 ,,一定采纳

[复制链接]
查看11 | 回复5 | 2013-7-24 09:26:17 | 显示全部楼层 |阅读模式
#ifndef __EEPROM_H__在文件尾应该还有一个#endif与#ifndef对应,实际是在编译的时候测试__EEPROM_H__是否被定义过,如果没有,则会来执行#ifndef __EEPROM_H__与#endif之间的内容#define __EEPROM_H__处于#ifndef __EEPROM_H__与#endif之间,意思是若__EEPROM_H__没有被定义,则由#define __EEPROM_H__来定义#defineuint8 unsigned char#defineuint16unsigned int这两句用法相同,将unsigned char命名为 uint8,如在程序中若要...
回复

使用道具 举报

千问 | 2013-7-24 09:26:17 | 显示全部楼层
#ifndef __EEPROM_H__#define __EEPROM_H__这两句应该是自定义头文件EEPROM_H__(这是规定格式,EEPROM可以换成别的词,方便记忆,和关键字不重复即可)记得在哪看过视频教程,抱歉没有找到教程上传。#defineuint8 unsigned char#defineuint16unsi...
回复

使用道具 举报

千问 | 2013-7-24 09:26:17 | 显示全部楼层
如果没有定义EEPROM.h头文件,就定义之你的最后还应该有#endif语句,只是你没有写,它的用处是防止重复定义,比如当多个c文件包含该头文件,如果你的头文件又定义了变量,那你编译就不能通过,你可以试试看定义uint8为无符号字符型变量定义uint16为无符号整形变量如有疑问,请追问,...
回复

使用道具 举报

千问 | 2013-7-24 09:26:17 | 显示全部楼层
额,这你不明白吗。#ifndef __EEPROM_H__
//如果前面有编译EEPROM_H的文件,这里就不编译了。#define __EEPROM_H__#defineuint8 unsigned char //定义一个UINT8 来代替unsigned char 如int8 i 就定义了一个8位的变量i#def...
回复

使用道具 举报

千问 | 2013-7-24 09:26:17 | 显示全部楼层
宏定义啊#ifndef __EEPROM_H__#define __EEPROM_H__为了避免重复定义头文件#defineuint8 unsigned char定义了uint8为 unsigned char 类型下一个同理...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行