#ifdef __cplusplus
 extern "C" {
 #endif 


??????????????????з??c???????·???


#ifdef __cplusplus
 }
 #endif 


???????????????c++?????в??????κ??????extern "C"?????include???c???????


// This is C++ code
 
 // Get declaration for f(int i?? char c?? float x)
 #include "my-C-code.h"   // Note: nothing unusual in #include line
 
 int main()
 {
   f(7?? 'x'?? 3.14);       // Note: nothing unusual in the call
   ...
 } 


????5?????????????c++?????е????????????c????

????????????????????????c???????????????????????????????????c????????????????????extern "C"???????c++?????е???????c???????????????????????????????


extern "C" void f(int i?? char c?? float x); 


???????c????????????????????????????


extern "C" {
   void   f(int i?? char c?? float x);
   int    g(char* s?? char const* s2);
   double sqrtOfSumOfSquares(double a?? double b);
 } 


?????????????????????c++????????????????


int main()
 {
   f(7?? 'x'?? 3.14);   // Note: nothing unusual in the call
   ...
 
????6??????????????????c????????c++????f(int?? char?? float)

????c++?????????????extern "C"?????f(int?? char?? float)????????c???????????


// This is C++ code
 
 // Declare f(int??char??float) using extern "C":
 extern "C" void f(int i?? char c?? float x);
 
 ...
 
 // Define f(int??char??float) in some C++ module:
 void f(int i?? char c?? float x)
 {
   ...
 } 


????extern “C"?????????????????????????????????c???ù淶??????????????????????????????c???????????????????????????c?????????????

????7?????c++/c????????c/c++????????????????

????????????д??extern "C"????????????????????????????????c++????????????ú?c??????????????????????????????????????

????8???????????c++?????????????????c????

????????????????

????fred.h