我有一个功能 void MOTOR(int left, int back , int right);
此函数运行另一个函数: void PWMe(int left, int back, int right);
MOTOR 使用这个和一些全局变量.
我想创建一个包含MOTOR但不是的头文件PWMe(请注意,这PWMe是一个函数mainproj.c).
我的第一个问题是,如何创建包含MOTOR,使用PWMe和全局变量 的头文件mainproj.c?
其次,我想MOTOR.c改为装配和MOTOR.lib.
标题的重点是公开声明.如果您希望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
Run Code Online (Sandbox Code Playgroud)
mainproj.h
#ifndef MAINPROJ_H__
#define MAINPROJ_H__
extern const char const *one_hit_wonder;
void PWMe( int left, int back, int right );
#endif
Run Code Online (Sandbox Code Playgroud)
请注意,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" );
}
Run Code Online (Sandbox Code Playgroud)
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 );
}
Run Code Online (Sandbox Code Playgroud)
现在,MOTOR使用任何参数进行调用都应该会产生一个来自80年代热门单曲的吸引人的合唱.