背景: hash_table.c というファイルに Hashtable を作成しました。これは、ヘッダー ファイル hash_table.h に含まれる内容の一部です。
/* hash_table.h */
#ifndef HASH_TABLE_H
#define HASH_TABLE_H
enum {BUCKET_COUNT = 1024};
struct Node {
char *key;
char *value;
struct Node *next;
};
struct Table {
struct Node *array[BUCKET_COUNT];
};
struct Table *TableCreate(void); //creates the table
....
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ fdata.cという別のCファイルでハッシュテーブルを開始したいと考えています。これを行う最善の方法はわかりませんが、ここで私が考えていたことは次のとおりです。
#include "hash_table.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct Table *t; //initiate the variable
void testFunc()
{
if(Hashtable does not exist) { //How do I accomplish this? Is it possible?
t = TableCreate(); //create the table
else{
continue...
....
明らかに、このテーブルを開始するためのより良い方法があれば、私はすべて耳にします。(Cで構造体を使うのはこれが初めてです)
ご支援ありがとうございます!