- Added `.gitignore` file to exclude unnecessary build and system files. - Summary: Added a README file for project headers, improving organization and management of header files in the source codebase. - Added a README file in the lib directory for project-specific libraries. - Added new partitions to `partitions.csv`. - The `git diff` output updates the `platformio.ini` file to include new build and upload options, dependencies, and configuration for an ESP32-S3 development board using Arduino. - The user has added a new `main.cpp` file, added I2S and FFT functionality to it, and defined a function to calculate the frequency and convert it to a MIDI note number. - Added a new README file in the `test` directory for PlatformIO Unit Testing.
38 lines
1.2 KiB
Plaintext
38 lines
1.2 KiB
Plaintext
|
|
This directory is intended for project header files.
|
|
|
|
A header file is a file containing C declarations and macro definitions
|
|
to be shared between several project source files. You request the use of a
|
|
header file in your project source file (C, C++, etc) located in `src` folder
|
|
by including it, with the C preprocessing directive `#include'.
|
|
|
|
```src/main.c
|
|
|
|
#include "header.h"
|
|
|
|
int main (void)
|
|
{
|
|
...
|
|
}
|
|
```
|
|
|
|
Including a header file produces the same results as copying the header file
|
|
into each source file that needs it. Such copying would be time-consuming
|
|
and error-prone. With a header file, the related declarations appear
|
|
in only one place. If they need to be changed, they can be changed in one
|
|
place, and programs that include the header file will automatically use the
|
|
new version when next recompiled. The header file eliminates the labor of
|
|
finding and changing all the copies as well as the risk that a failure to
|
|
find one copy will result in inconsistencies within a program.
|
|
|
|
In C, the convention is to give header files names that end with `.h'.
|
|
|
|
Read more about using header files in official GCC documentation:
|
|
|
|
* Include Syntax
|
|
* Include Operation
|
|
* Once-Only Headers
|
|
* Computed Includes
|
|
|
|
https://gcc.gnu.org/onlinedocs/cpp/Header-Files.html
|