How do I include a header file in MATLAB code?

59 views (last 30 days)
I'm quite new to MATLAB and I'm trying to make a header file and include it in my MATLAB code. The header file contains a lot of constants and calculations that would be needed in the main code. I'm not sure first of all though how to save the header file, (should it be .m?) and also what's the line of code needed to include it in a MATLAB code. I'm only getting answers for including C/C++ header files in MATLAB. Apologies if this is a really basic question!

Accepted Answer

dpb
dpb on 17 Jul 2017
Edited: dpb on 9 Dec 2021
It's a really basic question but Matlab m-file syntax doesn't include the facility.
One way you can simulate it is to make the information in the header into a function that is then called by the higher level function.
  3 Comments
Hugh Stone
Hugh Stone 5 minutes ago
The problem with that is that all the definitions in the function are local to the function. What I have done is define an M-File (NOT a function) that defines the flags: for instance an m-file called "flags.m" with the following lines:
NULL=0;
POINT=1;
LINE=2;
ARC=4;
You then call this m-file at the top of each code function that uses these flags. This works. However, if you do a dependency analysis on your code, it thinks NULL, POINT,... are Missing Files. It would be nice if there were a way to share flags and constants across a large body of code without this issue. Maybe there is and I just don't know how to do it - but a C-like header file would be ideal.
Thanks in advance for any help/advice.
Stephen23
Stephen23 about 1 hour ago
Edited: Stephen23 8 minutes ago
"What I have done is define an M-File (NOT a function) that defines the flags:"
In MATLAB terminology what you wrote is called a script:
All files with the extension .m are M-files, although this term is not really used in the documentation.
"However, if you do a dependency analysis on your code, it thinks NULL, POINT,... are Missing Files."
If users do not report a bug then 1) TMW might not know about it, thus 2) it is less likely to get fixed.

Sign in to comment.

More Answers (1)

Stephen23
Stephen23 9 minutes ago
Edited: Stephen23 less than a minute ago

Categories

Find more on Debugging and Analysis in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!