C语言两个文件模块的编译运行

来源:互联网 发布:手机服务器域名 编辑:程序博客网 时间:2024/06/06 09:57

本例在于实现两个及多个.cpp源文件在VC6.0调用运行。希望对各位有用,不足之处请留言,赠人玫瑰,手有余香,谢谢。

 多个代码运行方法是:建立.cpp文件后继续建立,在视图框(FileView)里面能看见多个.cpp就能保证同时运行。如有更好方法请告知O(∩_∩)O谢谢

2.1第一种

file1.cpp里面内容为下:

 int A;
int main()
{
   int demo(int);
   .....
   .....
}
file2.cpp里面内容如下:
extern A;
int demo(int n)
{
   .....
   .....

}

代码如下:

//file1.cpp

#include<stdio.h> int A;int main(){int power(int);int b=3,c,d,m;printf("enter the number a and its power m:\n");scanf("%d,%d",&A,&m);c=A*b;printf("%d*%d=%d\n",A,b,c);d=power(m);printf("%d**%d=%d\n",A,m,d);return 0;}
//file2.cpp
extern A;int power(int n){int i,y=1;for(i=1;i<=n;i++)y*=A;return y;}

2.2第二种
file1.cpp里面内容如下:
static int A;
int main()
{
   ......
   ...... 
}
注意要点:2.1与2.2的区别在于static只能本文件用A;其他文件不能再次调用、为静态外部变量

2.3以下在为函数声明,同样可以用多个.cpp文件实现。区别在与在main函数体内进行
file1.cpp里面内容如下:
int main()
{
extern void A(char a );
        ..
}
file2.cpp里面内容如下:
void A(char a)
{
  ..........
}
具体代码如下:
//file1.cpp
#include<stdio.h>int main(){extern void enter_string(char str[]);extern void delete_string(char str[],char ch);extern void print_string(char str[]);char c,str[80];enter_string(str);scanf("%c",&c);delete_string(str,c);print_string(str);return 0;}
//file2.cpp
#include<stdio.h>void enter_string(char str[80]){gets(str);}

//file3.cpp

void delete_string(char str[],char ch){int i,j;for(i=j=0;str[i]!='\0';i++)if(str[i]!=ch)str[j++]=str[i];str[j]='\0';}
//file4.cpp
#include<stdio.h>void print_string(char str[]){printf("%s\n",str);}
运行结果如下

1 0
原创粉丝点击