我正在尝试用一个C程序实现一个插件系统。插件将被编译为共享库,并在编译期间链接。
假设我有一个单链表结构定义:
struct plugin_iface
{
int data,
struct plugin_iface* next
};
每个插件创建此结构的全局实例,所有这些实例都具有相同的名称:
struct plugin_iface IfaceList =
{
.data = 42,
.next = &IfaceList
} // Defined in the global scope in each plugin
正如我所料,next指向了它的父级-
我的任务是创建一个词频分析程序,该程序从文本文件中读取内容,并生成以下示例输出:
SUMMARY:
27340 words
2572 unique words
WORD FREQUENCIES (TOP 10):
the 1644
and 872
to 729
a 632
it 595
she 553
i 545
of 514
said 462
you 411
我试图创建一个程序来实现这样的输出。我对C编程非常陌生,所以尽管它在一定程度上可以工作,但可能存在很多效率问题/缺陷。到目前为止,我写了以下内容:
#include <stdio.h>
#include &
在创建链表时,应该预先定义数据类型。下面是一个用于创建新链表的伪代码:
Type ListNode
Declare Pointer as integer
Declare data as string
EndType
Declare Namelist[1-50] of Listnode
For Index=1 to 49
Namelist[Index].pointer=Index + 1
Endfor
Namelist[50].pointer=0
让我困惑的是newly defined data types和可以存储多个数据元素的多维数组之间的相似性。
newly de