野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 24326|回复: 3

蛋蛋的忧伤ing

[复制链接]
发表于 2013-10-2 16:12:47 | 显示全部楼层 |阅读模式
移植了GUI,现在遇到这样一个问题 ,,,我在h文件中声明一个函数,在c中定义,在main'中引用,,关键我在c中没有加入h的头文件,为什么不抱错??。。。按道理坑定是错的啊??

在app.h文件中
#ifndef _APP_H_
#define _APP_H_
void MainTask(void);
#endif


在app.c文件中
void MainTask()
{


}


在main中


#include "stm32f10x.h"
#include <stdlib.h>
#include "bsp_ili9341_lcd.h"
#include "APP.h"
int main(void)
{

         
        bsp_InitLCD();               
        MainTask();
       











回复

使用道具 举报

发表于 2013-10-2 17:38:09 | 显示全部楼层
你想报什么错?

没感觉 有错啊
main.c 里 已经 :
[code=cpp]#include "APP.h"[/code]

所以 main函数 里调用 MainTask 是正确的啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-10-2 18:37:22 | 显示全部楼层
小栋 发表于 2013-10-2 17:38
你想报什么错?

没感觉 有错啊

但是我在app.c文件里面起码要加个app.h把,,不然编译器怎么找到我定义的MainTask???
回复 支持 反对

使用道具 举报

发表于 2013-10-4 11:39:21 | 显示全部楼层
火弟 发表于 2013-10-2 18:37
但是我在app.c文件里面起码要加个app.h把,,不然编译器怎么找到我定义的MainTask???

不需要……
楼主首先需要明白 什么情况下 才需要声明!!!

是定义放在后面,而前面有函数需要调用,因此才需要 声明。

而 app.c 是 直接定义,没有调用,不需要 加入头文件 来声明
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-11-1 08:15 , Processed in 0.041358 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表