【发布时间】:2014-03-07 20:15:45
【问题描述】:
所以我知道 .h 和 .c 文件,但是我在编译代码时遇到了问题。我错过了一些东西! Main.c 包括“Converter.h”,其中有
#ifndef CONVERTER_H
#define CONVERTER_H
void runConverter(char *);
#endif
我的converter.c 文件有实现..
#include "Converter.h"
#include "Stack.h"
#include "Queue.h"
#include <stdio.h>
#include <stdlib.h>
int checkChar(char input);
void printQueue(QueueP que);
void runConverter(char *input){ .... code etc (calls a stack and a queue
and does stuff)}
问题是,我的每个文件中都有未定义的引用。 .c 没有在 Stack.h 或 Queue.h 中找到信息,并且 converterTester 没有找到我的主要 runConverter 函数。有点困惑,但我认为它很小。有什么帮助吗?
【问题讨论】:
-
您应该发布您的
Converter.h、Stack.h和Queue.h。您提供的信息不足以找出问题所在。 -
您是否将其构建到库中,然后链接到二进制文件?
-
你能告诉我们你用什么来建造吗?是
gcc *.c还是 Makefile 或其他什么?? -
我在下面发表了评论,但会在这里重申。我使用的是代码块 IDE,但程序结构有问题。诚然,我是链接多个文件的新手(我习惯于只使用一个头文件)。所以我按照下面的建议,只是打开了一个 linux VM 并做了 gcc 命令行路由。
标签: c header-files referenceerror