Thanks for the explanations!
Seems I understand your comments, but still quite abscure about the code----what/where are the functions behind.
1) in the khash.h file line 29: #include "khash.h" [COLOR=Blue]Can the header include itself?
All of that entire block of code is inside /* C-style comments */. It is not compiled, it is informational.
Quote:
2) There are so many backslash to escape the newline. Is that only the author's preference or must-do?
It's because he assembled these functions using text-replacement macros. If you don't want a macro to be on one huge line, you have to escape it with \.
Quote:
3) The functions or struct khiter_t, khash_t, khinit(), kh_put ... Where to find their declaration/prototype?
khiter is just an integer. They name it khiter so you can tell the iteration part of the code easily apart from the rest.
khash_t is another macro. khash_t(32) becomes kh_32_t.
The type is actually declared by KHASH_MAP_INIT_INT(32, char)
They do it like this because the internals of the structure are different, depending on what you feed into KHASH_MAP_INIT_INT.
In the end it actually calls KHASH_TYPE(), which looks like this:
...so after substitution you would end up with the structure
kh_put is declared when you call KHASH_INIT, which calls KHASH_INIT2, which plunks down code like this:
In other words, the reason this code is so convoluted is because it's a code generator. The header file doesn't contain functions, it contains macros that declare different functions depending on what you feed them.
Quote:
4) I thought some of those functions may come from the C standard library, but the prefix kh_ seems not the case here, right? Thanks again!
None of this is standard. Except maybe SCOPE. Maybe. I'm not sure what that is.
Hi people I'm trying to do a school project and I've a situation wich is bothering me, imagine We've a program and that programs devided in multiple files "dotC1.c" and "dotC2.c" (for example) and they include our own header "header.h", and if We are using some libraries int both files it would... (2 Replies)
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)
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)
Hi Guys,
Good morning! I have a file which looks something like this:
Command was launched from partition 0.
------------------------------------------------
Executing command in server server3
Thu Jan 12 11:10:39 EET 2012
------------------------------------------------... (3 Replies)
Hello,
I use UBUNTU 12.04.
I want to write a short program using awk to select some lines in a file based on a second file.
My first file has this format with about 400,000 lines and 47 fields:
SNP1 1 12.1
SNP2 1 13.2
SNP3 1 45.2
SNP4 1 23.4
My second file has this format:
SNP2
SNP3... (1 Reply)
Hi,
I have been out of the loop with my UNIX/Linux for several years and have been working mainframe. I was trying to create a short two line program to create a list of email addresses as a variable and then send the list a file. Here is what I did and I thought that is was right, but I am... (3 Replies)
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)
Hi Team,
I'm looking for a command which removes files having 0 byte of having only header line (1 line).
My ETL process generates these files. Few files are not having header, in that case if no data from source, it will be 0 byte and few files are having header, in that case if no data from... (7 Replies)
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)
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)