From: Southp <is...@ci...> - 2004-10-19 17:43:04
|
Recently, I come into a problem caused by the linkage directive :extern "C". As far as I know, we need to apply this directive when we attempt to use functions written in C. However, I wonder how the compiler distinguishes a function written in C or C++? The situation I encountered is, I compiled a program, which included functions written in C, with GCC and VC .NET. With .NET, application of linkage directive is necessary. However, I had to remove it or had a linkage error replied by GCC. I'm so confused. When should I use linkage directive? How does compiler (VC .NET or GCC.especially GCC) distinguish functions written in C or C++? Any help is appreciated, thanks! |