程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> C函數和C++函數相互調用

C函數和C++函數相互調用

編輯:C++入門知識

test.c

[cpp]
int call_MyMath_sum (int,int); 
  
int sum(inta , intb) { 
 return call_MyMath_sum(a,b); 

int call_MyMath_sum (int,int);
 
int sum(inta , intb) {
 return call_MyMath_sum(a,b);
}


main.cpp

[cpp]
#include <iostream>  
 using namespace std; 
  
extern"C" { 
 int sum(int, int); 
 } 
  
class MyMath { 
 public: 
     static int sum(int, int); 
 }; 
 intMyMath::sum(inta, intb) { 
     return(a + b); 
 } 
  
extern"C" int call_MyMath_sum (inta , intb) { 
    return(MyMath::sum(a,b)); 
 } 
  
int main(void) { 
    cout<<sum(5,6); 
    return0; 
 } 

#include <iostream>
 using namespace std;
 
extern"C" {
 int sum(int, int);
 }
 
class MyMath {
 public:
     static int sum(int, int);
 };
 intMyMath::sum(inta, intb) {
     return(a + b);
 }
 
extern"C" int call_MyMath_sum (inta , intb) {
    return(MyMath::sum(a,b));
 }
 
int main(void) {
    cout<<sum(5,6);
    return0;
 }


Makefile

[cpp]
main.o: 
   g++ -c -o main.o main.cpp 
test.o: 
   gcc -c -o test.o test.c 
main: main.o test.o 
   g++ -o main main.o test.o 
all: clean main 
clean: 
   rm -f test.o main.o 

main.o:
   g++ -c -o main.o main.cpp
test.o:
   gcc -c -o test.o test.c
main: main.o test.o
   g++ -o main main.o test.o
all: clean main
clean:
   rm -f test.o main.o

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved