Login | Register   
RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: C++
Expertise: All
Aug 11, 2000

Functions Are Extern by Default

Unless explicitly declared static, an ordinary function is implicitly declared extern in C and C++. For example:

extern void func(int i); // extern is redundant

However, sometimes the extern qualifier is added to a function declaration to document the fact that it has external linkage and can be called from any module, or source file, for example:

// from <string.h>
extern size_t strlen(const char * s); 

Do not confuse plain extern with extern "C"—the latter has a special meaning, i.e., the identifier has C linkage rather than C++ linkage.

Danny Kalev
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.