当我尝试编译我的代码时,我得到了这个:
fatal error: includes.h: No such file or directory.
为什么会抛出此错误?
该程序应该用于演示链接列表。
#include "includes.h"
ListType list[5];
int main()
{
ListType list[5];
list[0].value = 0; list[0].next = list+1;
list[1].value = 10; list[1].next = list+2;
list[2].value = 20; list[2].next = NULL;
ListReport(list);
// Insert an element
list[3].value = 15; list[3].next = list+2;
list[1].next = list+3;
ListReport(list);
// Remove an element
list[0].next = list+3;
ListReport(list);
return 0;
}
// Report values in linked lisk
void ListReport(ListType *plist)
{
int nn = 0;
printf("ListReport\n");
while(plist != NULL){
printf("%d, value = %d\n",nn++, plist->value);
plist = plist->next;
}
}
/*******************************************************
* includes.h
******************************************************/
#include <stdio.h>
#include <stdlib.h>
typedef struct entry
{
int value;
struct entry *next;
} ListType;
void ListReport(ListType *plist);
// end of includes.h
答案 0 :(得分:0)
您的代码似乎将您的.cpp和.h文件连接到一个。您需要将它们分成2个文件。
像这样:
的main.cpp
#include "includes.h"
ListType list[5];
int main()
{
ListType list[5];
list[0].value = 0; list[0].next = list+1;
list[1].value = 10; list[1].next = list+2;
list[2].value = 20; list[2].next = NULL;
ListReport(list);
// Insert an element
list[3].value = 15; list[3].next = list+2;
list[1].next = list+3;
ListReport(list);
// Remove an element
list[0].next = list+3;
ListReport(list);
return 0;
}
// Report values in linked lisk
void ListReport(ListType *plist)
{
int nn = 0;
printf("ListReport\n");
while(plist != NULL){
printf("%d, value = %d\n",nn++, plist->value);
plist = plist->next;
}
}
INCLUDES.H
#include <stdio.h>
#include <stdlib.h>
typedef struct entry
{
int value;
struct entry *next;
} ListType;
void ListReport(ListType *plist);
或者你可以像你一样组合文件,并从顶部删除#include语句。