jeudi 24 septembre 2015

Compiler definitions on C function

I'm studying the SQLite source code (in c), but there are some things I can't figure out what they are, and I hope you can give me a hand. I know c, c++ and JAVA basics but I have never seen something like this and I don't know how to search for it.

In a c file, there are the next definitions (among others):

#ifndef SQLITE_CDECL
# define SQLITE_CDECL
#endif
#ifndef SQLITE_API
# define SQLITE_API
#endif

And then the above definitions are used like this:

SQLITE_API int SQLITE_CDECL sqlite3_conf(int, ...){
  //code

I know "SQLITE_API" and "SQLITE_CDECL" are not the return types, function names, keywords, K&R style nor variable modificators...

Why are this words placed like that in the function? What are they for?

Aucun commentaire:

Enregistrer un commentaire