【发布时间】:2014-03-29 02:17:25
【问题描述】:
我正在使用 C 语言,但遇到了一些麻烦。我需要在一个链表中存储一个字符数组(字符串)。换句话说,将字符串转换为链表。基本上,每个节点一个字符。例如字符串 dog\0,而不是在最后一个节点中存储一个空字符,它只会指向一个空指针来表示字符串的结尾…… d->o->g->NULL
建议很好,谢谢
int main(){
char *string;
string = malloc(sizeof(char)*100);
strcpy(string,"cheese");
node *list = NULL;
list = createNode(string[0]);
int i;
for(i=1;i<strlen(string);i++){
// this is where I'm stuck, the first char 'c'is in,
// I'm guessing i wanna loop through and
// store each char in a new node ?
}
return 0;
}
node *createNode(char data){
node *ptr = malloc(sizeof(node));
if (ptr == NULL)
{
return NULL;
}
ptr->data = data;
ptr->next = NULL;
return ptr;
}
【问题讨论】:
-
创建一个链表数据结构并将每个字符一次插入到链表中...
-
having some trouble?好吧,那到底是什么? -
请给我们一些代码,以便我们更好地帮助您。
-
我不认为我真的可以一次插入每个字符。我正在从输入文件中读取,并且字符串可能包含许多字符
-
将在一分钟内发布代码
标签: c arrays string linked-list nodes