我想在keil中的一个main程序里调用以前编好后缀为c的程序?
答案:2 悬赏:30
解决时间 2021-01-25 11:52
- 提问者网友:了了无期
- 2021-01-25 04:12
我想在keil中的一个main程序里调用以前编好后缀为c的程序?
最佳答案
- 二级知识专家网友:往事隔山水
- 2021-01-25 04:27
不行的!一个程序只能有一个main函数。可以这样:
比如你main.c要调用一个func.c
func.c可以写成这样:
先写个func.h-->
void func1();
void func2();
.....
然后写个func.c -->
#include"func.h"
void func1()
{
。。。。 //添加功能代码
}
void func2()
{
。。。。//添加功能代码
}
。。。
然后再在main.c里面
#include"func.h"
这样就可以用了
追问:你这个怎么理解呀,我有点不明白呢我举个吧 你看看怎么写头文件嘛?
假如我的max7219.c有
void Init (void)
{.....}
void ShutdownStart (void)
{.....}
void ShutdownStop (void)
{.....}
void DisplayTestStart (void)
{.....}
void DisplayTestStop (void)
{.....}
void SetBrightness (char brightness)
{.....}
追答:这样写一个max7219.h
void Init (void);
void ShutdownStop (void);
。。。
然后在一个max7219.c
void Init (void)
{.....}
void ShutdownStart (void)
{.....}
。。
其他地方想调用的时候 直接包含max7219.h就可以了。。
函数内部的一些变量你就放在函数定义好了啊,I/O引脚的话你可以直接在main.c文件里直接定义啊
比如
#include " xx.h"
#include "yy.h"
sbit LOAD1=P2^2;
sbit LOAD2=P2^3;
sbit LOAD3=P2^4;
sbit LOAD4=P2^5;
void main()
{
...
}
比如你main.c要调用一个func.c
func.c可以写成这样:
先写个func.h-->
void func1();
void func2();
.....
然后写个func.c -->
#include"func.h"
void func1()
{
。。。。 //添加功能代码
}
void func2()
{
。。。。//添加功能代码
}
。。。
然后再在main.c里面
#include"func.h"
这样就可以用了
追问:你这个怎么理解呀,我有点不明白呢我举个吧 你看看怎么写头文件嘛?
假如我的max7219.c有
void Init (void)
{.....}
void ShutdownStart (void)
{.....}
void ShutdownStop (void)
{.....}
void DisplayTestStart (void)
{.....}
void DisplayTestStop (void)
{.....}
void SetBrightness (char brightness)
{.....}
追答:这样写一个max7219.h
void Init (void);
void ShutdownStop (void);
。。。
然后在一个max7219.c
void Init (void)
{.....}
void ShutdownStart (void)
{.....}
。。
其他地方想调用的时候 直接包含max7219.h就可以了。。
函数内部的一些变量你就放在函数定义好了啊,I/O引脚的话你可以直接在main.c文件里直接定义啊
比如
#include " xx.h"
#include "yy.h"
sbit LOAD1=P2^2;
sbit LOAD2=P2^3;
sbit LOAD3=P2^4;
sbit LOAD4=P2^5;
void main()
{
...
}
全部回答
- 1楼网友:玩世
- 2021-01-25 05:48
不可以,这是系统初始化完成后,整个程序唯一入口,不管大、小系统,只能调用其他函数,不能被其它函数调用。
当然,如果修改了启动代码,那也有可能不叫main,不过换汤不换药而已。
你可以把main函数的内容复制出出来,做修改再放到新程序的main函数里面。
追问:请问一下 如果在新的main()函数里面与调用函数内部的变量相同的话 有没有影响呀 ?如果有的话 可以怎么取解决这个问题呢?
当然,如果修改了启动代码,那也有可能不叫main,不过换汤不换药而已。
你可以把main函数的内容复制出出来,做修改再放到新程序的main函数里面。
追问:请问一下 如果在新的main()函数里面与调用函数内部的变量相同的话 有没有影响呀 ?如果有的话 可以怎么取解决这个问题呢?
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯