user-0 提问: visual studio2017错误C2059

回复:
user: user-1
content: 修正了所有的语法错误，但不保证运行正确。请自行对比  #include<stdio.h> #include<stdlib.h> #include<string.h>  typedef struct TelPhone {     char Name[20];     char TelNumber[20]; }iTem; typedef struct node {     iTem item;     node* next; }Node; typedef struct list {     node* head;     int size; }List;  static void CopyToNode(Node* pNode, iTem item); void InitializeList(List* plist); bool ListsEmpty(const List* plist); bool ListsFull(const List* plist); unsigned int ListItemCount(const List* plist); bool AddItem(iTem item, List* plist); void ShowListItem(const List* plist); void FreetheList(list* plist);   /*全局函数，吧元素添加到列表*/ static void CopyToNode(Node* pNode, iTem item) {     pNode->item = item; } /*初始化List对象，指针为空，大小为零*/ void InitializeList(List* plist) {     plist->head = NULL;     plist->size = 0; } /*确认列表为空*/ bool ListsEmpty(const List* plist) {     if (plist == NULL)         return true;     return false; } /*确认列表是不是满了*/ bool ListsFull(const List* plist) {     plist = (List*)malloc(sizeof(List));     if (plist == NULL)    /*如果申请不到内存，说明列表已经满了*/         return true;     else         return false; } /*返回元素个数*/ unsigned int ListItemCount(const List* plist) {     unsigned int count = 0;     node *curr = plist->head;     while (curr != NULL)     {         count++;         curr = curr->next;/*从头往后移动到列表结尾*/     }     return count; } /*添加元素，单向列表，从尾部添加*/ bool AddItem(iTem item, List * plist) {     Node* pNew, *temp;     pNew = (Node*)malloc(sizeof(Node));     if (pNew == NULL)/*说明创建节点失败，自然没法添加*/         return false;     CopyToNode(pNew, item);     pNew->next = NULL;  /*对新建的pNew节点，初始化*/     if (plist->head != NULL)     {         while(plist->head -> next != NULL)         {             plist->head = plist->head->next;/*从头到尾找到最后一个节点*/         }         plist->head->next = pNew;     }     else         plist->head = pNew;     return true; } /*显示列表中的元素*/ void ShowListItem(const List* plist) {     Node* pNode = plist->head;     while (pNode != NULL) /*从头到尾依次显示*/     {         printf("%s:%s\n", pNode->item.Name, pNode->item.TelNumber);         pNode = pNode->next;     }     return; } /*释放内存*/ void FreetheList(List* plist) {     while (plist->head != NULL)     {         Node* pNode;         pNode = plist->head->next; /*pNode用来存储*/         free(plist->head);         plist->head = pNode;     } }  int main() {     List BookPhone;     Node* TempPhone = (Node*)malloc(sizeof(Node));     unsigned int count;     InitializeList(&BookPhone);     if (ListsFull(&BookPhone))     {         printf("内存已经慢啦\n");         exit(1);     }     printf("请输入联系人的姓名:\n");     while (gets_s(TempPhone->item.Name) != NULL&&TempPhone->item.Name[0] != '\0')     {         printf("请输入联系人的电话号码:\n");         gets_s(TempPhone->item.TelNumber);         if (ListsFull(&BookPhone))         {             printf("内存已经慢啦\n");             break;         }         if (!AddItem(TempPhone->item, &BookPhone))         {             printf("联系人添加失败!!!");             break;         }         while (getchar() != '\n')             continue;         printf("若还要存储，请输入下一个联系人：\n");     }     if (ListsEmpty(&BookPhone))         printf("通讯录没有数据\n");     else     {         printf("通信录\n");         ShowListItem(&BookPhone);     }     count = ListItemCount(&BookPhone);     printf("联系人数目：%d\n", count);     FreetheList(&BookPhone);     free(TempPhone);     system("PAUSE");     return 0; }

user: user-0
content: 一共又三个文件  my_list.h my_list.c 还有一个包含main()的