【发布时间】:2016-11-13 23:38:34
【问题描述】:
struct link_node
{
char node_str[ MAX_STR_LEN ];
struct link_node *next;
};
int compare_node( struct link_node *n1, struct link_node *n2)
{
if(n1[0] < n2[0])
{
return -1;
}
else if(n1[0] == n2[0])
{
return 0;
}
else
{
return 1;
}
}
这是我目前用于比较链表中节点的第一个字母的代码。程序没有运行,所以我想确定代码中的错误在哪里。代码看起来没问题吗?请记住,错误可能在代码的其他地方。
【问题讨论】:
-
你应该展示你的链表的结构。
-
struct link_node { char node_str[ MAX_STR_LEN ];结构链接节点*下一个; };
-
@Tim Eilers 什么是“节点的首字母”?!:) 节点的首字母是“n”。:)
-
请编辑您的问题而不是添加 cmets,以便所有内容都在一个地方,并且您可以格式化代码,以便于阅读。请提供stackoverflow.com/help/mcve。
-
既然显示的代码无法编译,为什么还要问是否可以?忽略未定义的 MAX_STR_LEN(大概你有
#define MAX_STR_LEN 32或类似的东西),你在node_str之前没有类型,你不能比较结构批发。
标签: c linked-list nodes alphabetical