我想使用C语言动态存储字符串行.
例如
sadasdasda5245sdf
fadfa6456
fasdf90-70 = 790
这些行的数量和每行的长度可以是任何东西.有什么方法可以动态存储整个事物.
有几种数据结构允许您动态添加项目,而无需事先知道所需的最大元素数量.有链表,二叉搜索树,平衡树,尝试,堆等等.
类似地,有很多方法可以动态分配不同长度的字符串.
最简单的方法可能是使用一个简单的链表:
typedef struct _node { struct _node *next; char *value; } node_t;
您可以跟踪头部,列表中的第一个项目,每个下一个字段指向列表中的下一个节点.例如,要遍历列表,您可以编写如下内容:
currentNode = head; while(currentNode != NULL) { /* do something with currentNode->value */ currentNode = currentNode->next; }
不知道你想做什么,具体来说,我无法提供更好的建议.
您希望经常对数据结构执行哪些操作?你是否只是简单地遍历字符串,搜索字符串,添加和删除字符串?