首先在xcode中编译多个.c文件

首先在xcode中编译多个.c文件,c,C,我的问题是关于我用来学习C语言的书的一个练习;头朝前。在本练习中,我们将学习在某些.c文件之间共享函数。我在Xcode 8.2.1中工作,想知道Xcode是否可以为我编译这个练习。我已经让它能够正确地使用终端,但我想知道Xcode是否允许这种编译,我只是在我的属性中出现了一些错误 该程序是一个简单的XOR加密程序 以下是文件: 主要条款c: #include <stdio.h> #include "encrypt.h" int main() { char msg[80];

我的问题是关于我用来学习C语言的书的一个练习;头朝前。在本练习中,我们将学习在某些.c文件之间共享函数。我在Xcode 8.2.1中工作,想知道Xcode是否可以为我编译这个练习。我已经让它能够正确地使用终端,但我想知道Xcode是否允许这种编译,我只是在我的属性中出现了一些错误

该程序是一个简单的XOR加密程序

以下是文件:

主要条款c:

#include <stdio.h>
#include "encrypt.h"

int main()
{
    char msg[80];
    printf("Type your message to be encrypted:\n");
    while (fgets(msg, 80, stdin)) {
        encrypt(msg);
        printf("The encrypted message is like this: %s\n", msg);
        encrypt(msg);
        printf("The encrypted message is decrypted as: %s\n",msg);
        printf("Type your message to be encrypted:\n");
    }
}
c.加密:

#include "encrypt.h"

void encrypt(char *message)
{
    while (*message) {
        *message = *message ^ 31;
        message++;
    }
}
现在我在main.c文件中得到一个错误,指出函数encrypt的类型存在冲突。这告诉我,它将加密视为一个int值函数(默认情况下)。我认为问题在于程序没有正确地看到encrypt函数,但是我给了它正确的头文件和正确的声明等。因此,我认为编译器存在一些问题

编辑:错误消息如下:

Semantic Issue Group: 
PATH/message_hider/encrypt.h:9:6: Conflicting types for 'encrypt'
PATH/message_hider/main.c:17:9: Implicit declaration of function 'encrypt' is invalid in C99

您是否向该项目添加了其他文件(文件->新文件->头文件)?我添加encrypt.c和encrypt.h文件的方法是向项目中添加一个文件(右键单击main.c->new file->add.c file(包括标题))并给出名称。您得到的确切、完整的错误消息是什么?请给出完整的错误消息,包括(如果相关)检测到错误的行。我不知道你所说的完全错误是什么意思。IDE只显示“build failed”,并用上面的错误消息突出显示代码的某些部分。代码窗口旁边显示:语义问题组:PATH/message\u hider/encrypt.h:9:6:encrypt和PATH/message\u hider/main的类型冲突。c:17:9:C99中函数“encrypt”的隐式声明无效您是否向该项目添加了其他文件(文件->新文件->头文件)?我添加encrypt.c和encrypt.h文件的方法是向项目中添加一个文件(右键单击main.c->new file->add.c file(包括标题))并给出名称。您得到的确切、完整的错误消息是什么?请给出完整的错误消息,包括(如果相关)检测到错误的行。我不知道你所说的完全错误是什么意思。IDE只显示“build failed”,并用上面的错误消息突出显示代码的某些部分。代码窗口旁边写着:语义问题组:PATH/message\u hider/encrypt.h:9:6:encrypt和PATH/message\u hider/main的类型冲突。c:17:9:C99中函数“encrypt”的隐式声明无效
Semantic Issue Group: 
PATH/message_hider/encrypt.h:9:6: Conflicting types for 'encrypt'
PATH/message_hider/main.c:17:9: Implicit declaration of function 'encrypt' is invalid in C99