Sponsored Content
Full Discussion: C language Header files
Top Forums Programming C language Header files Post 302476739 by Corona688 on Thursday 2nd of December 2010 11:20:41 AM
Old 12-02-2010
All header files do is declare the existence of a function. For instance, you have a library 'flogify' or something.

Code:
// flogify.c
#include <stdio.h>
#include "flogify.h"

int flogify(const char *oops)
{
        return(printf("flogify(%s)\n", oops));
}

Code:
//flogify.h
// #ifndef/#define/#endif prevents accidental multiple inclusion.
#ifndef __FLOGIFY_H__
#define __FLOGIFY_H__

extern int flogify(const char *);

#endif/*__FLOGIFY_H__*/

so a.c and b.c will know the function exists. But you have to link it, too, otherwise it'll complain it can't find it:

Code:
$ gcc a.c b.c -o flogify
/tmp/ccEYKx87.o: In function `main':
a.c:(.text+0x19): undefined reference to `flogify'
/tmp/ccNOvwnB.o: In function `other':
b.c:(.text+0xe): undefined reference to `flogify'
collect2: ld returned 1 exit status
$ gcc a.c b.c flogify.c -o flogify
$

In other words, header files just tell code how to use functions, they don't actually make the functions exist.
 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

grep data from header of files

Hello I want to grep data from header of the files . The header conatins data in this format . # $maint$ test1 # $product$ TTT I want to store maint name and product name with path of file . (12 Replies)
Discussion started by: getdpg
12 Replies

2. Shell Programming and Scripting

Removing Header from files before Concatenation

I need to concatenate the files of same type but with different names that conatin header. Before conactenating its mandatory to remove the header from the files .. and after concatenation the output file should contain header too. how to do it... thanks in advance. (4 Replies)
Discussion started by: amitpta
4 Replies

3. Shell Programming and Scripting

Need Header for all splitted files - awk

Input file: i have a file and need to split into multiple files based on first column. i need the header for all the splitted files. I'm unable to get the header. $ cat log.txt id,mailtype,value 1252468812,yahoo,3.5 1252468812,hotmail,2.4 1252468819,yahoo,1.2 1252468812,msn,8.9... (6 Replies)
Discussion started by: mannefromdetroi
6 Replies

4. UNIX for Dummies Questions & Answers

Merge Files into Single with Header

Hi All, I am trying to merge all files in a directory that end in *.txt to a single file with the contents one after the other. This I can do using the cat function but how do I put the name of the file as a header for each one in the combined single file and seperate the contents from each... (2 Replies)
Discussion started by: pcg
2 Replies

5. UNIX for Dummies Questions & Answers

Merge all csv files in one folder considering only 1 header row and ignoring header of all others

Friends, I need help with the following in UNIX. Merge all csv files in one folder considering only 1 header row and ignoring header of all other files. FYI - All files are in same format and contains same headers. Thank you (4 Replies)
Discussion started by: Shiny_Roy
4 Replies

6. UNIX for Dummies Questions & Answers

Kernel Header Files

I'm trying to lookup the definition of the ext4 superblock schedule in the kernel header files, but I can't seem to locate the files. I'm running the most recent Raspian Debian Wheezy OS with kernel version 3.18. Any help is greatly appreciated. Thank you!! (1 Reply)
Discussion started by: ksmarine1980
1 Replies

7. Shell Programming and Scripting

Merging two files to form header

Dear experts required you support to achieve below i need the file 2 values show on top of file 1 for mentioned valuesENTER CREDENTIALS or beside this please support to achieve the expected result . if I get the result 2 that will be better I have two files File 1 ENTER CREDENTIALS BILLING... (4 Replies)
Discussion started by: mirwasim
4 Replies

8. Programming

Where to get C header files?

Some of my c code compiles fine but others can't find header files. Colored_Chars.c:4:10: fatal error: graphics.h: No such file or directory Do I need to download them from some where? I found this. Is this what I need to do? Under Using DSL libraries - How do I use graphics.h in... (3 Replies)
Discussion started by: drew77
3 Replies

9. Shell Programming and Scripting

Find header in a text file and prepend it to all lines until another header is found

I've been struggling with this one for quite a while and cannot seem to find a solution for this find/replace scenario. Perhaps I'm getting rusty. I have a file that contains a number of metrics (exactly 3 fields per line) from a few appliances that are collected in parallel. To identify the... (3 Replies)
Discussion started by: verdepollo
3 Replies
Dist::Zilla::Plugin::GatherDir(3pm)			User Contributed Perl Documentation		       Dist::Zilla::Plugin::GatherDir(3pm)

NAME
Dist::Zilla::Plugin::GatherDir - gather all the files in a directory VERSION
version 4.300020 DESCRIPTION
This is a very, very simple FileGatherer plugin. It looks in the directory named in the "root" attribute and adds all the files it finds there. If the root begins with a tilde, the tilde is replaced with the current user's home directory according to File::HomeDir. Almost every dist will be built with one GatherDir plugin, since it's the easiest way to get files from disk into your dist. Most users just need: [GatherDir] ...and this will pick up all the files from the current directory into the dist. You can use it multiple times, as you can any other plugin, by providing a plugin name. For example, if you want to include external specification files into a subdir of your dist, you might write: [GatherDir] ; this plugin needs no config and gathers most of your files [GatherDir / SpecFiles] ; this plugin gets all the files in the root dir and adds them under ./spec root = ~/projects/my-project/spec prefix = spec ATTRIBUTES
root This is the directory in which to look for files. If not given, it defaults to the dist root -- generally, the place where your dist.ini or other configuration file is located. prefix This parameter can be set to gather all the files found under a common directory. See the description above for an example. include_dotfiles By default, files will not be included if they begin with a dot. This goes both for files and for directories relative to the "root". In almost all cases, the default value (false) is correct. follow_symlinks By default, directories that are symlinks will not be followed. Note on the other hand that in all followed directories, files which are symlinks are always gathered. exclude_filename To exclude certain files from being gathered, use the "exclude_filename" option. This may be used multiple times to specify multiple files to exclude. exclude_match This is just like "exclude_filename" but provides a regular expression pattern. Files matching the pattern are not gathered. This may be used multiple times to specify multiple patterns to exclude. AUTHOR
Ricardo SIGNES <rjbs@cpan.org> COPYRIGHT AND LICENSE
This software is copyright (c) 2012 by Ricardo SIGNES. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. perl v5.14.2 2012-06-21 Dist::Zilla::Plugin::GatherDir(3pm)
All times are GMT -4. The time now is 07:45 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy