【发布时间】:2014-07-08 20:10:31
【问题描述】:
为了完成一个更大的项目,我试图了解如何将结构数组和 char* 类型的标记发送到函数。我这段代码的目的是做以下事情:
- 打开文件
- 标记文件
- 向搜索函数发送令牌和结构数组
- search 函数会遍历arrayofstructures,使用strcmp 查找与token 匹配的对象
- 如果找到匹配返回 1,主函数将检查 1 或 0
- 如果为 0,则不向结构数组添加标记,如果为 1,则向结构数组添加标记
我刚刚写了一个小程序来看看我是否可以将数组和令牌发送到一个函数并进行比较,但是我得到了很多错误,我不知道该怎么做,因为我不明白大多数错误。
#include <stdio.h>
#include <string.h>
int search(struct id array[],char* tok);
struct id
{
char name[20];
int age;
};
int main(void)
{
struct id person[2] = { {"John Smith", 25},
{"Mary Jones", 32} };
char* token = "Mary Jones"; /*char* for strtok() return type*/
search(person,token);
}
int search(struct id array[],char* tok)
{
int i,value;int size = 2;
for(i=0;i<size;i++)
{
if(strcmp(array[i].name,tok) == 0)
value = 0;
else
value = 1;
}
return value;
}
【问题讨论】:
-
所以,套用第一段,您对数组和指针一无所知,但仍然有一个大项目需要最后的润色?好奇。
-
不是它的最后润色,我正在构建它。我对指针和结构有一个想法,但是当谈到向函数发送东西时,我总是搞砸了。