0
해시 테이블을 구현하려고하는데 메인 ("내게 필요한 것")에 "idx"를 정의 할 때까지는 아무 문제가 없었습니다. 이제 "idx"는 더 이상 전역 변수가 아니기 때문에 함수를 호출 할 때 인수로 사용해야하고 다음과 같은 메시지가 나타납니다. "경고 : 호환되지 않는 포인터 유형에서 'index_createfrom'인수 3을 전달합니다."C : 해쉬 테이블의 호환되지 않는 포인터 유형
이 경우 함수를 호출하는 올바른 방법은 무엇입니까?
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define SIZE_HASH_MAP 10
struct index{
char* info;
int line[30];
struct index *next;
};
typedef struct index Index;
int index_createfrom(FILE* pointerToText, FILE* pointerToKey, Index **idx)
{
return 1;
}
int main() {
Index* idx[SIZE_HASH_MAP] = {NULL};
FILE *pointerToText = fopen("text.txt", "r");
FILE *pointerToKey = fopen("keyFile.txt", "r");
int a = index_createfrom(pointerToText, pointerToKey, &idx); // warning here.
}