第一,要把两份代码里的main入口合并为一个,
如何合并要看你期望合并后的main函数实现什么样的功能,
例如,A程序是实现计算一个数组里的所有数相加后的和的值的功能;
B程序是实现输出任意数字到一个txt文件的功能。那么合并A和B程序后,
一般就是将B程序里的main函数里的实现内容追加到A程序里的main函数的实现内容之后,
就算是合并后的main函数的内容了。
希望你具体问题具体分析。
第二,合并过程中要确认两份代码有没有标识符命名上的重复的问题。
例如两份代码里的公开函数名有没有相同的,如果相同的话肯定要改成不同的。
第三,在确认了前两点后,接着确认编译链接不出错。
第四,链接成功后,确认运行动作是否符合期望。
当然,实际项目中合并两份代码,往往不是上面这样做了就可以了。还涉及到两个程序中的功能的合并之类的比较复杂的工作。实践出真知,希望你多做项目来收获心得。
1, 使用 if-else 语句 或者 switch 语句#include <stdio.h>
void func1(void)
{
printf(__func__)
}
void func2(void)
{
printf(__func__)
}
int main(void)
{
int choice
printf("select one func: 1->func1, 2->func2:")
scanf("%d", &choice)
if (choice == 1)
func1()
else if (choice == 2)
func2()
else
printf("err")
printf("\n")
return 0
}
2, 使用函数指针 的数组:
#include <stdio.h>
void func1(void)
{
printf(__func__)
}
void func2(void)
{
printf(__func__)
}
int main(void)
{
int choice
void (*p[2])(void) = {func1, func2} /* 这个比较难懂,其实就是定义了一个数组指针的 数组*/
printf("select one func: 1->func1, 2->func2:")
scanf("%d", &choice)
p[choice - 1]()
printf("\n")
return 0
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)