标题的要点是公开声明。如果您希望您的MOTOR(int,int,int)
的实现可以通过除定义的文件之外的任何源文件来看到,请将其放在标题中。
现在,如果您在别处声明了另一个功能PWMe(int,int,int)
,则同样的情况适用。要使MOTOR
函数能够调用它,您需要将其暴露在标题中。我想它是在mainproj.c
中定义的?
motor.h
#ifndef MOTOR_H__
#define MOTOR_H__
void MOTOR(int left, int back, int right);
#endif
mainproj.h
#ifndef MAINPROJ_H__
#define MAINPROJ_H__
extern const char const *one_hit_wonder;
void PWMe(int left, int back, int right);
#endif
注意,在mainproj.h
我已经声明的变量和函数。希望你明白这个主意。这里是实现:
mainproj.c
#include "mainproj.h"
const char const *one_hit_wonder = "Yazz";
void PWMe(int left, int back, int right)
{
printf("The only way is up, baby\n");
}
motor.c
#include "motor.h"
#include "mainproj.h"
void MOTOR(int left, int back, int right)
{
PWMe(left, back, right);
printf("For you and me now\n");
printf("\n - %s\n", one_hit_wonder);
}
现在,调用MOTOR
使用任何参数应该从80年代击中产生一个琅琅上口的副歌单。
与_amateur_ C头文件相反吗? – 2013-03-22 14:30:59
我不确定你要做什么...你想用你的'MOTOR()'函数的'inline'版本创建一个头文件,或者你想把原型放在一个头文件中?在制作头文件时遇到什么问题?至于将'MOTOR.c'改为程序集...你想输出编译器吗?你想重新组装你的函数吗?如果是的话,目标拱是什么? – Mike 2013-03-22 14:37:21
我想我的答案只有.... – 2013-03-22 14:37:45