I次のコードを持っている:C文字列とポインタ
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
struct wordlist {
char *value;
struct wordlist *next;
};
int compare (struct wordlist *one , struct wordlist *two) {
return strcmp(one->value, two->value);
}
void add(struct wordlist *pp, char *value) {
struct wordlist *new;
new = malloc(sizeof(*new));
new->value = value;
for (; pp != NULL; pp = pp->next) {
if (compare(pp, new) > 0) {
break;
}
}
new->next = pp;
pp = new;
}
void display(struct wordlist *ptr) {
for (; ptr != NULL; ptr = ptr->next) {
printf("%s\n", ptr->value);
}
}
提出するために、途中でそれを破壊します。申し訳ありません
int main(void) {
struct wordlist *root = NULL;
add(root, "item1");
add(root, "item2");
add(root, "item4");
add(root, "item3");
display(root);
return 0;
}
それはITEM1 ITEM2 ITEM3 ITEM4
が、そのは、任意のものを印刷していないと私は理由を理解していない
をプリントアウトする必要があります。
ええ、私も,,,,,なぜできない '変化(5);' '5'を変更しません..:D –
笑、私は、コードを理解しますが、私はそれは文句を言わない仕事何らかの理由を参照してくださいカント – Yonlif
どちらの行ですか? @TonyTannous – Yonlif