请你帮我纠正我的代码:
这是一个返回指向struct item的指针的函数:
struct item* findItem(const char* key) {
for (int i = 0; i < nItems; i++) {
if (!strcmp(items[i].key, key)) { return &items[i]; }
}
return NULL;
}
从main函数,我想检索我的struct值如下:
struct item search_items = findItem(&key) ; // I have problem with this line
char* itemValue;
if (search_items != NULL)
{
itemValue = search_items->value;
}
如何检索结构并将其保存以用于main
函数?
答案 0 :(得分:3)
如果从函数返回指针,则必须将其作为指针读取。
请注意struct item* search_items
部分代码和我的代码{我添加了指针*
)
struct item* search_items = findItem(&key) ; // i have problem with this line
char* itemValue;
if ( search_items != NULL)
{
itemValue = search_items->value;
}