m**********e 发帖数: 220 | 1 在virtual box里编写c程序,想写头文件的话
.h文件保存在哪里呢
gedit一个.h文件,写了然后保存了
但是其他程序来include的时候却说没有这个文件
是怎么回事呢
#ifndef __HARDWARE_H__
#define __HARDWARE_H__
//代码部分
#endif
为什么HARDWARE_H是大写的呢
而#include 用的时候确是小写
基础问题,多谢回答! |
d****i 发帖数: 4809 | 2 Use -I to add your header file directory as gcc
options. For C preprocessor macros, it is a convention to use all capital
letters. (See C/C++ language reference for more details: e.g. http://www-01.ibm.com/support/docview.wss?uid=swg27002103&aid=1)
【在 m**********e 的大作中提到】 : 在virtual box里编写c程序,想写头文件的话 : .h文件保存在哪里呢 : gedit一个.h文件,写了然后保存了 : 但是其他程序来include的时候却说没有这个文件 : 是怎么回事呢 : #ifndef __HARDWARE_H__ : #define __HARDWARE_H__ : //代码部分 : #endif : 为什么HARDWARE_H是大写的呢
|
l********a 发帖数: 1154 | 3 #ifndef __HARDWARE_H__
这个是#include guards,google一下有详细解释 |
m**********e 发帖数: 220 | 4 多谢回答!
【在 d****i 的大作中提到】 : Use -I to add your header file directory as gcc : options. For C preprocessor macros, it is a convention to use all capital : letters. (See C/C++ language reference for more details: e.g. http://www-01.ibm.com/support/docview.wss?uid=swg27002103&aid=1)
|
c*********e 发帖数: 16335 | 5 __HARDWARE_H__是故意起的一个生僻的名字,如果这个名字没有定义,那么定义它。这
是为了防止重复一段代码。
【在 m**********e 的大作中提到】 : 在virtual box里编写c程序,想写头文件的话 : .h文件保存在哪里呢 : gedit一个.h文件,写了然后保存了 : 但是其他程序来include的时候却说没有这个文件 : 是怎么回事呢 : #ifndef __HARDWARE_H__ : #define __HARDWARE_H__ : //代码部分 : #endif : 为什么HARDWARE_H是大写的呢
|