在我的程序中,我有一个名为hiker.c
的文件。该文件的适当内容如下:
char** answer(char c)
{
// Initial scanf and check
printf("Please input the character which you want to build your diamond with");
if (check(c) == true) {
printf("\n");
} else {
printf("Not a valid character");
return NULL;
}
....
我在#include "check.h"
中有hiker.c
作为标题。 check.h
的内容如下:
// Check Function for the input characters
bool check(char c)
{
int ascii = (int)c;
if (ascii < 122 && ascii > 97) {
return false;
printf("Lowercase letters not allowed.");
} else if (ascii < 65 && ascii > 90) {
return false;
} else {
return true;
}
}
现在我得到的错误是:
check.h:5:6: error: no previous prototype for 'check' [-Werror=missing-prototypes] bool check(char c)
我不明白这个原因。
答案 0 :(得分:1)
这是一个可能的check.c文件
#include <stdio.h>
#include "check.h"
// Check Function for the input characters
bool check(char c)
{
int ascii = (int)c;
if (ascii < 122 && ascii > 97)
{
return false;
printf("Lowercase letters not allowed.");
}
else if (ascii < 65 && ascii > 90)
{
return false;
}
else
{
return true;
}
} // end function: check.c
这是hiker.c文件
#include <stdio.h>
#include "check.h"
char** answer(char c)
{
// Initial scanf and check
printf("Please input the character which you want to build your diamond with");
if (check(c) == true) {
printf("\n");
} else {
printf("Not a valid character");
return NULL;
}
....
这是check.h文件
#ifndef CHECK_H
#define CHECK_H
#include <stdbool.h>
bool check(char c);
#endif // CHECK_H